建议新手学java,Java比c简单,c有很多的细节需要你掌握,比如指针,内存分配,内存释放等这些细节概念。这个对初学者确实有些难,很多人需要学习很长时间,才能开始用c写程序,因为你不得不先学习指针这一类的概念。
Java相对概念没那么多细节,掌握语法基本就可以开始写简单的程序了。而且c的开发工具没Java那么强大,例如初学者难免会有语法上的错误,Java有语法错误,开发工具会很清楚地提醒你。而好多c开发工具做不到这个(当年我学的时候至少是这样)。
随着对Java的越来越熟,对程序的运行流程越来越熟,你就可以更容易地理解指针、内存分配,内存回收等相关概念了,学起来反而不会那么枯燥。大学就是这样,很多连基本的编程能力都不具备,就开始学数据结构,结果是学得很枯燥,理解也不深入。如果你掌握了编程再来学习数据结构、算法之类的。你会觉着有趣多了,也容易理解的多。
Java 这么多年的摸索也奠定了它的大局意识和诸多套路,避免错误的编程方式、使用最合理的编程逻辑是 Java 这类语言想做的事情。比如 Rust,上手难,但如果开始写就基本只有一种写法,这种控住程序员表达的方式诞生的语言往往能让错误降到最低,让你的代码被无数人轻易读懂。
新手先学C语言。
首先,C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。而Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,具有功能强大和简单易用两个特征,适合于互联网+应用程序开发。Java语言相比于C应用层面更广,也比C更容易学。
想进大厂,那么如果只会java后端技术是不够的。在校招阶段进大厂更多知识的要求不是广度,而是深度。比如操作系统,网络,数据结构和算法,以及jvm,和java的基础知识需要熟练掌握。而框架和一些高级中间件需要你了解或简单应用。但是大厂就那几个,竞争压力还是比较大的。
选择一门语言要根据你的方向来。比如你要学习后端。那就java、python、php、c#、或node.js。如果搞安卓那肯定java、kotlin、js(混式开发)。如果大数据那肯定是java、scala最好,其次python也行。如果搞人工智能算法那肯定是python、matlab。
数据分析可以考虑R、python、matlab。如果你想搞爬虫,那python肯定最好选择,当然java等其他语言都可以。如果你是竞赛ACMer。那c 肯定是你的拿手菜、也不排除部分鬼才用java哈。
本回答被网友采纳