Java程序设计学习笔记【第二篇】Java语言基础

学习内容

2.1、数据类型
2.2、基本数据类型应用示例
2.3、表达式和运算符
2.4、程序控制语句

学习产出

2.1 数据类型

2.1.1 Java的数据类型

Java语言的数据类型可以分为两大类:基本数据类型和引用数据类型(复合数据类型)。

image

Java定义了8个基本数据类型:字节型、短整型、整型、长整型、字符型、浮点型、双精度型、布尔型。

image
2.2.2 常量与变量

在程序运行过程中,数据值不能改变的称为常量,数据值可以改变的称为变量。
在Java语言中,所有的常量和变量都要“先声明后使用”。

1.声明变量的格式:  
2.数据类型 变量名1,变量名2,.....;

常量的声明在前面加一个关键词:final
例如:

final int DAY = 10; //DAY的值在整个程序中保持不变,将其声明为常量

习惯上,常量名用大写字母,变量名用小写字母。

2.1.3 变量赋值

在Java中赋值用(=)表示,所谓赋值就是把赋值号右边的数据或运算结果赋给左边的变量。一般格式为:

变量 = 表达式

例如:
int x = 5;   //指定x为整型变量,并赋初值5

2.1.4 关键字

关键字就是Java语言中已经规定了特定意义的单词,用来表示一种数据型或表示程序的结构等。这些单词不能用作常量名或者变量名。

Java语言中规定的关键字有:

abstract、boolean、break、byte、case、catch、char、class、
continue、default、do、double、else、extends、false、final、
finally、float、for、if、implements、import、instanceof、int、
interface、long、native、new、null、package、private、protected、
public、return、short、static、super、switch、synchronized、
this、throw、throws、 transient、true、try、void、volatile、while。

2.1.5 转义符
image
2.2基本数据类型应用示例
2.2.1 整数类型与浮点类型

1.整数类型

import javax.swing.*;
class Example_1
{
    public static void mian(String args[])
    {
    int x,y,sum;    //声明三个整型变量
    x = 3;
    y = 5;
    sum = x + y;
    JOptionPane.showMessageDialog(null,
        "x = 3;"+"\n y = 5;"+"\n x + y = "+sum);
    System.exit(0);
    }
}

运行结果:

image

2.浮点类型
浮点数也称为实数,当计算的表达水有精度要求时就要使用浮点类型。

 /*  计算圆的面积  */
    import javax.swing.*;
    class Example2_2 
        { 
      public static void main(String args[])
          { 
        double pi,r,s; 
        r = 10.8; //圆的半径 
        pi = 3.1416;  
        s = pi * r * r; //计算面积
      JOptionPane.showMessageDialog(null,"圆的面积为:" + s);
      System.exit(0);
      } 
    } 

运行结果:

image

2.2.2 字符型
1.字符型变量
在Java中,存储字符的数据类型是 char。一个字符在内存中占2个字节。
给字符型变量赋值时,字符需要用单引号括起来,例如:

char ch = ‘a’

       /* char 变量的用法 */
 import javax.swing.*;
 class example_1 
{ 
      public static void main(String args[])
          { 
        char ch1,ch2,ch3; 
        ch1 = 88; // code for X 
        ch2 = 'Y'; ch3 = '汉';
      JOptionPane.showMessageDialog(null,"ch1、ch2 、ch3: " + ch1 + "、" + ch2 + "、" +ch3);
      System.exit(0);
      } 
    }

运行结果:

image

Java的char与C或C++中的char不同。在C或C++中char只有8位,而在Java中char有16位,因为它使用的是Uniocode定义的国际化的字符集。

2.字符串
用双引号括起来的多个字符常量称为字符串。

'abc'是不合法的,而""是合法的,表示空字符。

2.2.3 布尔型
Java表示逻辑值的基本类型称为布尔型。它只有true和false两个值。

    /* 布尔类型的用法 */
    class Example2_4 { 
      public static void main(String args[]) { 
        boolean b; 
        b = false; 
        System.out.println("b is " + b); 
        b = true; 
        System.out.println("b is " + b); 
        // outcome of a relational operator is a boolean value 
         System.out.println("10 > 9 is " + (10 > 9)); 
      } 
    } 

运行结果:

image
2.2.4 数据类型转换

1.自动类型转换(级别低的变量值赋给级别高的变量)

数据类型转换需要符合的两个条件:
a.转换前的数据类型与转换后的数据类型兼容;
b.转换后的数据类型比转换前的数据类型表示的范围大。

基本数据类型精度从低到高依次为:
byte --> short --> int --> long --> float --> double

2.强制类型转换

强制类型转换是指当把级别高的变量赋给级别低的变量时,必须使用类型的强制转换运算。转换的格式为:
(类型名)要转换的值或者变量;
例:

int a;
double b = 3.14;

a = (int)b;
//结果a = 3,b = 3.14(强质类型转换会降低数据精度)

2.3 表达式和运算符
2.3.1 表达式与运算符分类

1.表达式
表达式是由运算符、操作数和方法调用按照语言的语法构造而成的符号序列。

2.运算符以及分类

image
2.3.2 算术运算符

算数运算符同C语言!!!!

image
2.3.4 关系与逻辑运算符

关系运算符用于比较两个值并决定他们的关系,然后给出相应的取值。

image

等于是双等号(==)!!!!不是单等号(=)!!!!

image

条件运算符的短路问题单独研究!!

2.4 程序控制语句
2.4.1 语句

1.表达式语句

x = 3;
y = 5;
sum =  x + y;
//一个表达式的最后加上一个分号就构成了一个语句,分号是语句不可缺少的部分。

2.复合语句

{
x = 25 + x;
System.out.println("x = "+ x);
}
//用大括号把一些语句括起来构成复合语句

3.控制语句

控制语句用于控制程序流程以及执行的先后顺序,主要有顺序控制语句、条件控制语句、循环控制语句。

2.4.2 键盘输入语句

在Java中,使用简单文本扫描器Scanner类可以接受用户从键盘输入的数据。Scanner可以从System.in中读取数据。

Scanner sc = new Scanner(System.in);
int a = scnextInt();
double b = sc.nextDouble();
String str = sc.next();

2.4.3 顺序控制语句

顺序控制是程序最基本结构,包含选择控制语句和循环控制语句的程序,在执行上也是按顺序结构执行的。
例:(交换两个变量的值)

int a,b,temp;
temp = a;
a = b;
b = temp;
//temp在这里是i·中间变量,只起过渡作用

2.4.4 if选择语句

1.单分支选择结构

if(条件表达式)
{
若干需要执行的语句;   //当上面的if判断为真时执行语句
}

2.双分支选择结构

if(表达式)    //if的条件为真执行该语句块
{
语句块1;
}
else{
语句块2;    //if的条件为假执行该语句块
}

2.4.5 switch语句

switch语句是一个多分支选择语句,也叫开关语句。

switch(变量名或表达式)
{
    case 判断常量1:{程序段1; break;}
    case 判断常量2:{程序段2;break;}
    .
    .
    case 判断常量n:{程序段n;break;}   //break必不可少!!
    [defaut:{程序段n+1;}]
}

2.4.6 循环语句

1.for循环语句

for(循环变量赋初值;循环条件;增量量表达式)
{
    循环体语句块;      //循环体
}

示例:(累加器)

/* for循环 求从1加到100的整数和 */
import javax.swing.JOptionPane;

public class Example2_14 
{ 
  public static void main(String[] args) 
    {  
      int sum=0; 
       for(int i=1;i<=100;i++)
        {
           sum=sum+i;
        }
       JOptionPane.showMessageDialog(null,"1+2+3+...+100= "+sum);
       System.exit(0);     //退出程序
    }
}

for(; ; )表示无限循环!可以使用break强行退出循环!

2.while循环语句

1)while语句

while(循环条件表达式)
{
    循环体;    //条件表达式为真时执行循环体
}

2)do…while 语句

do 
{
    循环体;
    }while(循环条件表达式);

3.循环嵌套
循环可以嵌套。在一个循环体内包含另一个完整的循环,叫做循环嵌套。循环嵌套运行1,外循环每执行一次,内层循环要执行一个周期。

/*嵌套循环打印输出99乘法表*/
 /* 循环嵌套应用 */  
  public class Example2_19 
 {
    public static void main(String[] args)
  {
    int i,j;
    for( i = 1;i <= 9;i++) 
     {
       for(j = 1;j <= i;j++) 
       {  
        System.out.print(i+"x"+j+"="+i*j+"\t");
       } 
       System.out.println(); 
     } 
   }
 }

运行结果:

image

2.4.7 跳转语句
1.break语句(中止整个循环)

break有两种用法:
a.用来退出switch循环,跳出switch结构继续执行后续语句;
b.break语句用来中止循环。

/* 使用break语句跳出循环 */ 
import javax.swing.JOptionPane;

class Example2_20 
 { 
   public static void main(String args[])
    { 
      for(int i=0; i<100; i++)
        { 
          if(i == 10) break; // i=10时跳出循环 
          System.out.println("i= "+i);
        } 
       System.out.println("循环10次后,跳出循环!");
     } 
  } 

2.continue语句 用来中止本次循环。其功能是中止当前正在进行的本轮循环,即跳过后面剩余的语句,转而执行循环的第一条语句,计算和判断循环条件,决定是否进入下一轮循环。

     /*continue语句打印三角形  */  
   import javax.swing.JOptionPane;
   class Example2_21 { 
     public static void main(String args[]) { 
       String output="";
       for(int i=0; i<5; i++) { 
          for(int j=0; j<5; j++) { 
            if(j > i) { 
              continue ; 
             } 
          output= output +"*"+"      ";
          } 
          output=output+"\n";
        } 
        JOptionPane.showMessageDialog(null,output);
        System.exit(0);
     } 
   } 

总结
Java语言基础与C语言基本相同,只存在较小的差异,对于已经学习过C语言的来说几乎可以直接套用了,花了一下午的时间整理,算是一个复习强化了。后面继续坚持整理学习笔记

如有不足,欢迎各位大佬批评指正!

原文链接:https://blog.csdn.net/k1507157/article/details/114632663

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容