Java笔记整理(上)

 第一章


将 java 源文件编译为 class 字节码文件

javac HelloWorld.java
java HelloWorld    //运行

变量命名:

  1. 允许字母、下划线、数字(不允许写在开头)美元符号$构成
  2. 严格区分大小写,不能与关键字相同

关键字:

常量前缀为 final,其余大致和 C++ 相同

Java修饰符:

  • 访问控制修饰符 : default, public, protected, private
  • 非访问控制修饰符 : final, abstract, static, synchronized

数据类型:

基本数据类型:byte,short,long,int,double,float,boolean,char 没有String,String是一个对象

静态类型:static(一般在类中定义,全局使用同一个数据)

失精度用强制转换,不失精度自动转换。

整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。

自动转换:

转换从低级到高级。

  -------------------------------->  

byte,short,char—>int—>long—>float—>double

逻辑运算符:

用T/F表示 True 和 False

a b !a a&b a|b a^b a&&b a||b
T T F T T F T T
T F F F T T F F
F T T F T T F F
F F T F F F F F

 

第二章


 

窗口的数据读入与显示:

import java.swing.JOptionPane

String r_str= JOptionPane.showInputDialog("请输入圆的半径:");
r= Double.parseDouble(r_str);
//窗口读入的都默认为string型

JOptionPane.showMessageDialog(parentComponent,message);
//parentComponent一般情况使用null,message为你要输出的信息,方式类似于System.out.println

System.exit(0);
//记得要有这句话

parseInt() 方法:

int x =Integer.parseInt("9");
double c = Double.parseDouble("5.1");
String s = String.valueOf(12.3); //12.3可用变量代替,常用于输出

输入与输出:

输入方式(import java.util.Scanner):

Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int i = sc.nextInt();
System.out.println("请输入一个浮点数:");
double j = sc.nextDouble();
System.out.println("请输入一个字符串:");
String s = sc.next();
//String s = sc.nextLine();    //按行读入
sc.close();

主要的两种输出方式:

System.out.println("该数字为"+j);
//println实现输出到控制台,各项数据间用‘+’连接
System.out.printf("该数字为%f",j);
//占位符输出,关于占位符的对应使用,后面放一个表格吧

主要占位符(想知道更多的可以去搜,写题基本上这四个够了):

占位符 数据类型
%s  string
%d int
%f double,float 
%c char

这里要和C++中的 printf 做个区分,C++中 double 要用 %lf ,而Java的double和float一样使用%f。

伪随机数的使用:

import java.util.Random

double rand1 = Math.random();    //[0,1.0)
int rand2 = (int)(Math.random()*2);        //{0,1}
int rand3 = 1+(int)(Math.random()*10);    //1-10的整数

 

第三章


数组:

创建数组:

dataType[] array = new dataType[Size];
dataType[] array = {value0, value1, ..., valuen};

//二维数组:
type[][] typeName = new type[Length1][Length2];
//length2可为空

区别于C++中可以使用  int c[10] ;  这样的句子,Java中需要使用 new 赋予存储空间。

使用 for 循环的时候记得把循环条件用 array.length 表示。

数组的拷贝:

System.arraycopy(Object src, srcPos,Object dest,destPos,int length);
//从数组src的第srcPos项开始的length个项目拷贝到目标数组,从destPos的length个位置

 数组的排序(import java.util.Arrays):

Arrays.sort(a);    //a是一个数组

字符串常用方法:

s1.length();
//返回s1的长度
s1.indexof(s2,i);
//在s1内从第i位开始查找s2,返回找到的首地址,若找不到返回-1
s1.contains("7");
//判断s1内是否包含某个字符函数
if(s1.equals(String s2))System.out.println("yes");
//将此字符串与字符串比较
if(s1.equalsIgnoreCase(String s2))System.out.println("yes");
//将此 String 与另一个 String 比较,不考虑大小写

split():

  • split() 方法根据匹配给定的正则表达式来拆分字符串
  • 注意: . 、 $、 | 和 * 等转义字符,必须得加 \\
  • 注意:多个分隔符,可以用 | 作为连字符
  • 语法
    public String[] split(String regex)    //regex为正则表达式分隔符。
  • 返回值:字符串数组。

StringBuffer:一种可以修改的字符串

public class RunoobTest{
    public static void main(String args[]){
        Scanner sc=new Scanner(System.in);
        String a = sc.next();
        StringBuffer str = new StringBuffer(a);    //复制a创建StringBuffer
        int i=0;
        str.deleteCharAt(i);    //i为下表,返回字符
        str.append("Runoob..");    //将指定的字符串追加到此字符序列
        str.insert(2, "Java");    //将字符串插入此序列中,使J下标为2
        str.delete(5,8);    //移除此序列的子字符串中的字符。[5,8)
        str.reverse();    // 将此字符序列用其反转形式取代
        String a = str.toString();    //返回字符串表示形式
        sc.close();
    }
}

 


 

制作:BDT20040

posted @ 2021-11-02 21:28  流白李  阅读(383)  评论(0编辑  收藏  举报