尼采般地抒情

尼采般地抒情

尼采般地抒情

音乐盒

站点信息

文章总数目: 316
已运行时间: 1570

一、关于JAVA

Java和C和C++


  1. c是面向过程的语言。c++和Java都是面向对象的。在c中没有类或者对象的概念。
  2. java运行在虚拟机上,号称与平台无关。也就是你开发的java程序无论是unix,linux还是windows都可以正常运行。但是实际上这是一个良好的愿望,实际跨平台时还会有各种各样的问题。c和c++都是直接编译成可执行文件,是否能跨平台主要看你用到的编译器特性是否有多平台支持。
  3. 因为c和c是直接编译成可执行文件,所以运行效率要比java高。至于c和c哪个更快,两种语言的拥趸已经吵了很多年。
  4. java因为是运行在虚拟机上,不需要考虑内存管理和垃圾回收机制。也是就你可以声明一个对象而不用考虑释放他,虚拟机帮你做这事情。而c和c语言本身没有多少内存管理的概念,写c和c程序如果用到指针就一定要考虑内存申请和释放。内存泄漏是c和c++最头疼的问题。
  5. 代码重用:java中有一个根类object,所有的类都是其子类,通过这种方式将容器和算法分离,实现一种操作作用于多种对象,提高代码重用。c中没有总根对象,但是c提供了另一个更强大的功能“模板”,同样高效地实现了一种操作作用于多种对象,提供了高效的代码重用方法。
  6. 数据结构:java内建了丰富的数据结构:列表,集合等等(很久没用java了,有些记不太清)。而c++则用“模板”同样提供了各种数据结构(容器)。
  7. c语言在一些比较低层,和硬件打交道的地方用得比较多。另外很多开源软件由于unix/linux开发习惯也大多采用c来开发。Java是现在最流行的开发语言,c++比起java稍稍不那么流行一些,但是功能很强大。如能深入掌握,可以写出兼顾效率和美观的优秀代码。


多语言简略对比


Ideas are cheap, show me the code  学到了,学到了~


代码块:python通过缩进来确定代码块
复数:java、python有,C、Cplusplus没有
python:相对于java,python就是java的压缩版本
包、接口、API:我觉得java也好,python也好,正是因为这些模块组件化,才使得这些语言好很好的的健壮性


二、数据类型;运算符;表达式

基本数据类型

常量、标识符和变量、数据类型

JAVA中除了下面8种数据类型其他的都是以对象(或者说类的实例)存在的

  • string:要熟悉常用的函数
    • length():字符串的长度
    • charAt(i):取字符串的第i个元素
  • boolean(java中需要全部写出来)
    • true
    • false
  • 下面6中数值型数据类型


运算符和表达式

  • 赋值语句,赋值表达式
  • 输入输出:输入输出,要有记得清除的空间,close的意识!
// 方式一
import java.util.Scanner;

Scanner input = new Scanner(System.in);
double radius = input.nextDouble();

// 方式二 : 好处就是避免项目工程中类当中重名的情况
java.util.Scanner input = new java.util.Scanner(System.in);
double radius = input.nextDouble();


  • 数值运算符

+、-、*、/、%

  • 逻辑运算符
    && || ! ^(异或:相同才为假)
    & | ^ 位运算符:会先化成二进制对二进制码进行分析
  • 运算符的优先级



三、程序三大基本结构

顺序结构

选择结构


  • if(){} else{}
  • switch
public class Test {
   public static void main(String args[]){
      //char grade = args[0].charAt(0);
      char grade = 'C';
 
  switch(grade)
  {
     case 'A' :
        System.out.println("优秀"); 
        break;
     case 'B' :
     case 'C' :
        System.out.println("良好");
        break;
     case 'D' :
        System.out.println("及格");
        break;
     case 'F' :
        System.out.println("你需要再努力努力");
        break;
     default :
        System.out.println("未知等级");
  }
  System.out.println("你的等级是 " + grade);

}
}


  • 条件表达式
System.out.println((num % 2 == 0) ? "num is even" : "num is odd");


循环结构


  • while () {}
  • do {} while ();
  • for () {}
  • 关于break(跳出该级别的for循环)和continue(后面的语句不读)
  • 关于return



  • 关于增强的for循环,在模板章节,配合vector使用,并发控制,高效使用


缺点:看不见索引


四、方法









评论区