欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1. Java基础和细节-Java的基本程序设计和结构

程序员文章站 2022-05-25 23:10:58
...

1. 注释

     1)单行注释:从//开始到本行结尾
     2)长篇注释:/*开始,*/结束
     3)文档注释:/**开始,*/结束,可以用来自动生成文档

2. 数据类型
     1)整数
          int(4)     short(2)     byte(1)     long(8)[以L结尾]
     2)浮点
          float(4)[有效位7,以F结尾]     double(8)[有效位15]
          三个特殊的浮点数值:
               正无穷大(Double.POSITIVE_INFINITY)
               负无穷大(Double.NEGATIVE_INFINITY)
               Double.NaN(0/0或者负数的平方根结果为NaN),Double.isNaN(double num)判断是否是NaN
     3)字符
          char(2) 单引号'A',Unicode编码单元\u0000~\uffff,\u2122表示注册符号等
          Character类中有很多字符是否是标示符等的判定方法
     4)布尔
          boolean(1) 两个值:true和false
 
3. 变量
     1)不要使用未被初始化的变量,最好显示进行初始化
     2)使用final声明常量(const是Java保留的关键字,但目前没有被使用)
 
4. 运算符
     1)Math类中包含了各种各样的数学函数,在函数前加Math.或者import static java.lang.Math.*(静态导入)
     2)可预测结果比运行速度更重压的话,使用StrictMath类(fdlibm实现的算法)
     3)int和long转换成float或者long转成double都会有精度损失
 
5. 代码点和代码单元
     1)代码点就是一个Unicode字符。代码单元就是代码点的集合
     2)辅助字符需要一对代码单元表示,辅助字符一般用于汉字或者日文等字符
     3)遍历字符串,依次查看每一个代码点:        
int cp = sentence.codePointAt(i);
if(Character.isSupplementaryCodePoint(cp))
        i+=2;
else
        i++;
       4)回退操作
i--;
int cp = sentence.codePointAt(i);
if(Character.isSupplementaryCodePoint(cp))
        i--;
 
 6. StringBuffer vs. StringBuilder
     1)StringBuffer线程安全
      2)StringBuilder非线程安全,单线程中使用比StringBuffer快
 
7. 控制台输入输出   
1)Scanner in = new Scanner(System.in);
     System.out.println("What is your name?");
     String name = in.nextLine();
     System.out.println("How old are you?");
     int age = in.nextInt();
     in.next();      //读一个单词
     
2)Console cons = System.console();
     String userName = cons.readLine("User Name: ");
     char[] password = cons.readPassword("Password: ");     // 密码处理之后马上用填充值覆盖数组元素——安全
     3)格式化输出
           System.out.printf("%,.2f", 10000.0/3.0);     ==>       3,333.33

1. Java基础和细节-Java的基本程序设计和结构
            
    
    博客分类: java java 
 
1. Java基础和细节-Java的基本程序设计和结构
            
    
    博客分类: java java 
 
8. 文件的输入输出
     1)Scanner in = new Scanner(new File("myfile.txt"));     // 构造一个从给定文件读取数据的Scanner
     2)Scanner in = new Scanner(String data);                   // 构造一个从给定字符串读取数据的Scanner
     3)PrintWriter out = new PrintWriter("myfile.txt"));           
 
9. 控制流程
     1)flag:  ...   break flag;
 
10. 大数值
     1)BigInteger
     2)BigDecimal
 
11. 数组
     1)简单打印System.out.println(Arrays.toString(array));
     2)数组拷贝Arrays.copyOf/System.arraycopy(from, fromIndex, to, toIndex, count);
     3)数组排序Arrays.sort(array);
     4)int r = (int)(Math.random() * n) [0, n-1]随机整数
     5)for(double[] row : array)
               for(double value: row)
                    do something with value
     6)二维数组快速打印System.out.println(Arrays.deepToString(array));
     7)不规则数组
               int[][] odds = new int[NMAX + 1][]
               for(int n = 0; n <= NMAX; n++)
                    odds[n] = new int[n+1];

 

  • 1. Java基础和细节-Java的基本程序设计和结构
            
    
    博客分类: java java 
  • 大小: 119.2 KB
  • 1. Java基础和细节-Java的基本程序设计和结构
            
    
    博客分类: java java 
  • 大小: 125.2 KB
相关标签: java