JAVA 第2课 基本程序设计

一个简单的Java程序

public class FirstSample{

  public static void main(String[] args){

System.out.printLn("HelloWorld!");

}

}

注意:

  • 所有的Java程序都有这样的结构;先定义了一个类(当然一个程序(这整个文档页面下)可能包含多个类;);public 叫做访问修饰符,用来定义程序中其他类对这段代码的访问级别。class 是类的声明 FirstSample 是这个类的名字;类的所有属性方法都将包含在类最外层{  }中;并且要注意;源代码的文件名必须和公共类名称相同,也就是说这个源代码的文件名必须是FirstSample.java。
  • 运行任何一个程序,JVM都是从类中的 main方法开始执行;并且main 方法必须要用public声明。main(参数 )名字为args的字符数组 作为传入参数。
  • Java注释 //    或者 /* 注释内容 */    或者 /** 内容可生成文档 */
  • print 与printLn的区别:print 输出后 如果后面还有输出内容,将同行输出;printLn的话就会在下一行输出。

 

数据类型

Java 是强类型语言,意味着每种变量都需要在它前面声明类型。

类型一共8种;整型4种  浮点型2种 布尔型 字符型

整型:int 4字节(20亿)   short 2字节  long 8字节 byte 1字节

浮点型:float 4字节    double 8字节(常用)

char类型 2字节

布尔类型

 

变量

先声明如:

double salary;

int vacatonDay;

long earthPopulation;


        

注意:变量声明了之后一定要初始化,并且声明和初始化最好靠近第一次使用的地方。

 

常量

用 final int CONSTANT  = 222;

声明后只能赋值一次。

类的常量声明定义在main方法的外部,故同一个类内的其他方法也能使用这个常量;特别的,如果这个常量被public声明,那么其他类也能够访问这个常量。

运算符

常用运算符

+ - * /  % (可以写  +=   *= )

注意:当参与 / 的两边都是整数时 表示整除,否则都是浮点除法。

自增与自减


//  注意不能 写 4++ 具体数字++是错误的

int m = 7;
int n  =7;

a = n++; // a = 7
b = ++m; // b = 8
/* 但最后
n = 8
m = 8
*/

可以写;n++ ; ++n ;但是不建议在表达式中用 比如:a =  n++  +2

比较运算符

==  !=  <  >  < =  >=   &&  ||   !

condition ?x:y (条件成立选 x 否则选 y)

位运算(速度快)

& | ~ ^  (与 或 非 异或)

左移  <<  (乘2的秘运算)

右移

对int型,最高位是符号位

无符号右移(操作单纯的移位运算)

简单的数学运算

平方根: Math.sqrt()

幂运算:Math.pow()

double x = 4;
double y;
int a = 2
int b = 0

//平方根运算
y = Math.sqrt(x);
System.out.printLn(y);

// 幂运算
b = Math.pow(a,2)
System.out.printLn(b);

数值类型转换

自动类型提升

这样写报错是因为 逆开始定义 b是byte型,运算的结果是int型,int 不能赋值给 byte型。

因为 3 是 int 而且是常量 ;赋值给byte类型的 b会自动截取;

但是 b = b +1 就会报错,因为 byte类型的 b不会对变量自动截取(宁愿报错也不允许可能的精度缺失);

强制类型转换

括号与运算符优先级

字符串

String greet = "hello"

  • 提取子串   String a = greet.subtring(0,3) ;// hel
  • 拼接 +
  • 字符串不可修改(就像常量一样);但是可以重新定义变量
  • 检查字符串是否相等:string.equals(string)    string.equalsIgnoreCase(string)(忽略大小写)  注意:避免使用 ==比较字符串是否相等。
  • 空串“”   str.length() == 0 或者 str.equals("")检查是否是空串

字符串常用API

代写

输入输出

 

控制流程

控制流程有:顺序;判断;选择; 循环

if  判断

if (条件){

执行;

}
if (条件){

执行1;

}
else{

执行2;

}
if (条件1){

执行1;

}
else if (条件2){

执行2;

}
else if (条件3){

执行3;

}
else{

执行4;

}

switch 选择

switch (选择)
{ 
case 选项1:
        执行语句;
        break;

case 选项2:
        执行语句;
        break;
case 选项3:
        执行语句;
        break;



.....

default:
      // bad input
      break;

}

循环 while

while (条件){

执行语句;

破坏条件;

}
do 

{

执行语句;

破坏条件;

}

while (条件);
for (int i=1; i<100; i++ ){

执行语句;

}

 break 语句

// break 适用范围是switch 和 循环语句内
//带有标签的 break 可以方便的用来决定跳出那一层循环。

outter: for (int i = 0; i<100;i++){

    inner: for (int j = 2; j<99; j++){
       
               break outter;

}

}

continue 语句

遇到continue 不用管其下面的循环  而从头执行下一次循环

continue 也可以加标签

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值