Java日常学习总结之基础程序设计篇

想要了解更多欢迎大家访问我的个人博客:AllenMistake的小窝

让我们一起进步啊

Java学习笔记

基础程序设计篇

布尔类型

  • Java中,布尔值并不能转换成为数字,数字也不能转化为布尔;
  • 枚举类在第5章的时候介绍;声明的时候enum关键词;

字符串

  • Java字符串并不是字符型数组

    char greeting[]="Hello"
    

    这种认识是错误的,Java字符串大致类似于char*指针

    char* greeting="Hello"
    
  • 空串是长度为0,内容为空的字符串;null串测试目前没有任何对象与该对象关联;更多请看第四章

  • String类的一些常用方法

检测两个字符串是否相等
  1. 区分大小写"Hello".equals(greetintg)
  2. 不区分大小写"Hello".equalsIgnoreCase(“hello”)
  3. 不能用==来判断,这样对比的是存储位置,而不是具体的值;
其他
  1. char charAt(inr index)
    返回指定位置的字符
  2. int compareTo(String other)
    按照字典顺序,如果字符串位于other之前,返回一个负数;如果字符串位于other之前,返回一个正数,相等返回0;
  3. boolean equals(Object other)
  4. int indexOf(String str)
    返回与字符串str或代码点cp匹配的第一个字串开始的位置。位置从0开始计算;
  5. String substring( int beginlndex, int endlndex )
    返回一个新字符串。这个字符串包含原始字符串中从beginlndex 到串尾或endlndex-l的所有代码单元。

StringBuilder

如果需要用许多小段的字符串构建一个字符串, 那么应该按照下列步骤进行。
首先, 构建一个空的字符串构建器:

StringBuilder builder = new StringBuilderO;

当每次需要添加一部分内容时, 就调用append 方法。

builder.append(ch); // appends a single character
bui1der.append(str); // appends a string

在需要构建字符串时就凋用toString 方法, 将可以得到一个String 对象, 其中包含了构建器
中的字符序列。
String completedString = builder.toStringO ;

输入与输出

  1. 可见输入与不可见输入

    //可见输入
    Scanner in = new Scanner(System.in);
    

    nextLine 方法将输入一行。

    System.out.print("What is your name? ");
    String name = in.nextLine();
    

    在这里,使用nextLine 方法是因为在输人行中有可能包含空格。要想读取一个单词(以空白符作为分隔符),就调用

    String firstName = in.nextO;
    

    要想读取一个整数, 就调用nextlnt 方法。

    System.out.print("How old are you? ")int age = in.nextlntO;
    

    因为输入是可见的, 所以Scanner 类不适用于从控制台读取密码。Java SE 6 特别引入了Console 类实现这个目的。要想读取一个密码, 可以采用下列代码:

    Console cons = System.console();
    String username = cons.readLine("User name: ");
    cha「[] passwd = cons.readPassword("Password:");
    

    为了安全起见, 返回的密码存放在一维字符数组中, 而不是字符串中。在对密码进行处理之后, 应该马上用一个填充值覆盖数组元素

流程控制

  • 块作用域
    c++支持在嵌套的块中声明同一变量,但是Java不允许这么做

数组

  1. 声明并创建一个数组

    int[] a = new int[100];
    

    创建一个数字数组时, 所有元素都初始化为0。boolean 数组元素会初始化为false,对象数组的元素则初始化为一个特殊值null, 这表示这些元素(还)未存放任何对象。初学者对此可能有些不解。例如,

    String[] names = new String[10];
    

    会创建一个包含10 个字符串的数组, 所有字符串都为null。

  2. 打印数组中元素
    可以利用toString()方法,转化为字符串直接输出;
    也可以利用循环一个个打印

  3. 拷贝数组
    C++ 注释: Java 数组与C++ 数组在堆栈上有很大不同, 但基本上与分配在堆(heap) 上的数组指针一样。也就是说,

    int[] a = new int[100]; // Java
    

    不同于

    int a[100]; // C++
    

    而等同于

    int* a = new int[100]; // C++
    

    注意:Java 中的[ ]运算符被预定义为检查数组边界,而且没有指针运算,即不能通过a加1得到数组的下一个元素。

  4. 多维数组
    Java 实际上没有多维数组, 只有一维数组。多维数组被解释为“ 数组的数组。”
    C++ 注释: 在C++ 中, Java 声明

    doublet] [] balances = new double[10] [6]; // 3ava
    

    不同于

    double balances[10] [6] ; // C++
    

    也不同于

    double (*balances) [6] = new double[10] [6] ; // C++
    

    而是分配了一个包含10 个指针的数组:

    double** balances = new double*[10]; // C++
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值