9.23-9.26
进入网址下载好intellij IDEA https://www.jetbrains.com/idea/download/#section=windows
1、类
public class hello{...}
其中,hello为名称,若在此基础上修改名称,那么编译将出现错误(文件名依然是hello.java,所以文件名和名称必须保持一致)
2、系统输出
println --输出追加一个换行
print --输出不追加换行
System.out.print("hello");
System.out.print("world");
输出结果为:
helloworld
System.out.println("hello");
System.out.println("world");
输出结果为:
hello
world
2、程序注释
\\:单行注释
/*... ...*/:多行注释
/**... ...*/:文档注释
3、标识符和关键字
(1)标识符
/**在Java中标识符定义的核心原则:由字母、数字、_、$所组成,
其中不能使用数字开头,不能使用Java中的保留字(或者“关键字”)
* 关于标识符的使用建议:
* 在编写代码的时候尽量不要使用数字,例如i1,i2
* 命名尽量有意义,不要使用a,b之类的,尽量使用要编写题目的英文单词
* 在Java中是区分大小写的,mlkj、Mlkj和MLKJ是三种不同的标识符
* “$”符号有特殊的意义,不要使用(内部符的内容中可以看到)
* 举例非法标识符:
* class(关键字【关键词全部用小写字母的形式表示】)
* 67.9(数字开头和包含“.”)
* YOOTH HFJDF(包含空格)
*/
注意:Java中可以使用中文定义标识符
public class hello
{
public static void main(String[] args)
{
int 年龄 =20;
System.out.println(年龄);
}
}
输出结果为:
20
尽管Java中可以使用中文定义标识符,但是小编强烈建议在实际编程中不要使用中文定义
(2)关键字
Java中有两个未使用到的关键字:goto(在其他语言中表示无条件跳转) 、const(在其他语言中表示常量)
Java中还有三个特殊含义的标记:true、false、null
4、数据类型
byte(8位)
short(16位)、 int(32位)、long(64位)
float(32位)、double(64位)
char (16位)
bloolean
5、整型
public static void main(String[] args)
{
int x=208374;
byte y = 124;
short z = 1234;
long sum = 1234554;//long型的整数,最后的“L”或者“l”不能丢;
System.out.println(x+y+z+sum);
}
6、浮点型
double a = 12.2;//double型的浮点数,最后的“D”或者“d”可要可不要;
float b = 13.3f;//float型的浮点数,最后的“F”或者“f”不能丢;
float b = 13.3f;//float型的浮点数,最后的“F”或者“f”不能丢;
float c = 13.3f;
System.out.println(b+c);
输出的结果为:
26.6
整型计算中,无法保存小数位,为了解决除法计算中小数点的问题,可以将数据类型转换为double型或者是float型,如下:
public static void main(String[] args)
{
int a=10;
int b=4;
System.out.println(a/b);
System.out.println((double)a/b);//最终类型为double
System.out.println(a/(float)b);//最终类型为float
}
输出结果为:
2
2.5
2.5
7、字符型
package classe;
public class hello
{
public static void main(String[] args)
{
char c='A';
int num = c;//获得该字符的编码数值
System.out.println(num);
num = num + 32 ;
System.out.println((char)num);//int转char
char a='李';//只允许保存一位中文字符;
int sum = a;
System.out.println(sum);
}
}
8、布尔型
是一种逻辑结果,主要保存两种数据:true 和false,这类数据主要用于一些程序的逻辑使用上
package classe;
public class hello
{
public static void main(String[] args)
{
boolean a = true;
if(a)
{
System.out.println("hello");
}
}
}
输出结果为:
hello
9、string字符串
package classe;
public class hello
{
public static void main(String[] args)
{
String str = "hello world";
System.out.println(str);
//字符串的连接:
str = str + ",my name is anny";
System.out.println(str);
}
}
10、转义字符
package classe;
public class hello
{
public static void main(String[] args)
{
System.out.println("你好:\t 我叫马云\n我来自:\"神秘而又古老的东方\"");
}
}
输出结果为:
你好: 我叫马云
我来自:"神秘而又古老的东方"
11、运算符
11.1 算术运算符:+、-、*、/、%(加、减、乘、除、模运算【取余数】)
package classe;
public class hello
{
public static void main(String[] args)
{
int a = 10;
int b = 2;
int x = 4;
int y = 3;
System.out.println("加法a+b:"+(a+b))
System.out.println("减法a-b:"+(a-b));
System.out.println("乘法a*b:"+(a*b));
System.out.println("除法a/b:"+(a/b));
System.out.println("模运算x%y:"+(x%y));
//简化运算符
int sum = 20;
sum+=a;//等价于 sum=sum+a,其余运算符原理一样,这里就不一一列举
}
}
11.2 自加和自减
++i:先自增在运算
i++:先运算在自增
System.out.println(++a); //输出结果为11;
System.out.println(a++);//输出结果为10;
11.3 关系运算符
package classe;
public class hello
{
public static void main(String[] args)
{
int x = 10;
int y = 10;
double z = 10.0;
boolean flag = x==y;
System.out.println(flag);
boolean flag1 = x==z;
System.out.println(flag1);
char c = 'A';
int sum =65;
boolean flag2 = c==sum;
System.out.println(flag2);
}
}
输出结果:
true
true
true
11.4 三目运算符
package classe;
public class hello
{
//找最大值
public static void main(String[] args)
{
int x = 10;
int y = 20;
int max;
max = x > y?x:y;//x>y成立,max=x;x>y不成立,max=y;
System.out.println(max);
}
}
11.5 逻辑运算符
package classe;
public class hello
{
public static void main(String[] args)
{
int x = 10;
int y = 10;
boolean flag =! (x==y);//flag取(x==y)的反面,x==y ->flag=true
//!(x==y) -> flag =false
System.out.println(flag);
}
}
package classe;
public class hello
{
public static void main(String[] args)
{
int x =10;
int y = 20;
int z = 30;
System.out.println( z>x && z>y );
System.out.println( z<x && z<y );
System.out.println(z>x || z>y);
System.out.println( z<x || z<y );
}
}
输出结果:
true
false
true
false
11.6 位运算符
&、|、^、~、<<、>>、>>>
按位“与”、按位“或”、异或(相同为0,不同为1)、取反、左位移、右位移、无符号右位移
package classe;
public class hello
{
public static void main(String[] args)
{
int x = 16;
System.out.println(x<<2);//左位移:相当于x乘以了2的二次方,移位多少就是乘以2的多少次方
System.out.println( x>>2 );//右位移:相当于x除以了2的二次方,移位多少就是除以2的多少次方
}
}
移位可以很好的实现乘以或者除以2的n次方的计算