java学习日记(1-7)

java 中标识符可以为$符

java默认整数是int类型超出int型必须标明是long型
char 为 2字节
String 是引用类型

byte b = 1;
b = b + 1; #会报错,类型不匹配, b提升为int,不能赋值给byte,需要强转

b += 1; # 可以,相当于b = (byte)( b + 1 )

####################   day03    #############################

import java.util.Scanner

Scanner sc = new Scanner(System.in); //读取键盘

boolean b = sc.hasNextInt();    //判断下一个是否是int

int val = sc.nextInt(); // 只接受int,其他的会报错

String s = sc.next()  //读取一个词,空格分开

String s1 = sc.nextLine()   //读取一行

Random 类
import java.util.Random
Random rand = new Random();
int i = rand.nextInt(100); // 产生0-99之间的 整数

double d = rand.nextDouble(); //产生0.0-1.0之间的随机数
for while if break continue 同c++
############### day04 #############################

switch 表达式接受的数据类型
jdk 1.0 -1.4    byte short int char
jdk 1.5     byte short int char enum
jdk 1.7     byte short int char enum String
case 穿透

数组定义与c不同,为引用类型

int [] arr = new int[3];
arr 保存的是堆中的地址
arr.length 数组大小
int[] arr2 = new int[]{1,2,3,4}     # int 后不能写任何长度,否则编译失败

int [] arr3 = {1,2,3,4} //recommand

java中二维数组长度可不等
int[][] arr2d = int new[3][4]
int[][] arr2d = {{1,2,3}, {4,5}, {6}}


################## day05 ################
method 方法
overload 重载, 同C,只看方法名与参数列表
################# day06 ###############
java中的类是引用类型

Phone p = new Phone();
p是一个地址,在堆中分配空间,等同于C++在堆中分配
分配空间时,会给类的属性赋默认值

import java.util.ArrayList
必须指明类型
ArrayList<Integer> arrlist = new ArrayList<Integer>();
集合存入数据要用引用类型,不存储基本类型,内部由数组实现,在中间插入删除时间复杂度很大

# 方法
1 arrlist.add(data)
2 arrlist.get(index) 从0开始
3 arrlist.size()
4 arrlist.add(index, data) 插入到index位置,很费时
5 arrlist.set(index, data) 修改index值为data
6 arrlist.remove(index)
7 arrlist.clear()  只删除元素,容器还在

######################### day07 ############################
a 97
char int 之间转换同C++,查询ASCII
char 存储中文时查询unicode表,汉字2个字节,有些扩展字符在java中占4字节,包括一些汉字
取值范围 0 ~ 65535
选择排序,冒泡排序,数组逆序

WE ARE ALL IN THE GUTTER, BUT SOME OF US ARE LOOKING AT THE STARS
原文地址:https://www.cnblogs.com/YKang/p/7256090.html