Java--常用API介绍
Scanner类--键盘输入,室友起来三个步骤:
- 第一,导包:import java.util.Scanner
- 第二,创建:Scanner sc = new Scanner(System.in)
- 第三,使用:通过"nextInt();"获得输入的参数
匿名对象(new 类名称() 只有右边的,没有左边的)
- 注意:匿名对象只能使用唯一的一次,下次再用就不得不再创建一个新对象。
- 使用建议:如果确定有一个对象值需要使用唯一的一次,就可以用匿名对象。
Random类--用来生成随机数字。使用起来三个步骤:
- 第一,导包:import java.util.Random
- 第二,创建:Random sc = new Random()
- 第三,使用:获取随机数的范围是int的所有范围(有正负),通过"nextInt();"获得输入的参数。若是nextInt(int n),可以限定随机数的大小范围(0 ~ n-1)
Array对象数组,看具体实例:
//题目:定义一个数组,用来存储3个Person对象
//数组有一个缺点,一旦创建就无法更改数组的大小即长度
public class Demo01Array {
public static void main(String[] args) {
//step1 创建数组
Person[] arr = new Person[3];
Person one = new Person("迪丽热巴",18);
Person two = new Person("麦迪娜",28);
Person three = new Person("杨幂",38);
// step2 给数组赋值
//把one当中的地址赋值到数组0号元素位置(原因是由于没有重写toString)
arr[0] = one;
arr[1] = two;
arr[2] = three;
// step3 打印输出
System.out.println(arr[0]);//地址值
System.out.println(arr[1]);//地址值
System.out.println(arr[2]);//地址值
System.out.println(arr[0].getName()+" "+arr[0].getAge());
} }
运行结果:
com.itcast.day02.Person@6d06d69c
com.itcast.day02.Person@7852e922
com.itcast.day02.Person@4e25154f
迪丽热巴 18
5.ArrayList(数组长度动态增长)
- public boolean add(E e):先集合当中添加元素,参数的类型和泛型一致,返回值代表添加是否成功。备注:对于ArrayList集合来说,add添加动作一定是成功的,所以返回值可用可不用。但是对于其他集合来说,add添加不一定成功。
- public E get(int index):从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素。
- public E remove(int index):从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素的。
- public int size():获取集合的尺寸长度,返回值是集合包含的元素个数。
- 实例:
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
System.out.println(list);
//向集合添加元素
boolean success = list.add("张三");
System.out.println("添加的动作是否成功:"+success);
list.add("李四");
list.add("王五");
list.add("赵六");
System.out.println(list);
//从集合当中获取元素:get,索引值从0开始
String name = list.get(2);
System.out.println("第2号索引位置是:"+name);
//从集合当删除元素:remove,索引值从0开始
String whoRemoved = list.remove(0);
System.out.println("被删除的人是:"+whoRemoved);
System.out.println("数组的长度是:"+list.size()+" 分别是:"+list);
}
运行结果:
[]
添加的动作是否成功:true
[张三, 李四, 王五, 赵六]
第2号索引位置是:王五
被删除的人是:张三
数组的长度是:3 分别是:[李四, 王五, 赵六]
基本类型 包装类(引用类型,包装类都为位于java.lang包下) byte Byte short Short int | Integer [特殊]
long | long
float | Float
double | Double
char | Character [特殊]
boolean | Blooean
从JDK 1.5+开始,支持自动装箱、自动拆箱- 自动装箱:基本类型 --> 包装类型(引用类型)
- 自动拆箱:包装类型 --> 基本类型
6.String--java.lang.String类代表字符串:
- API当中说,Java程序中所有字符串字面值(如"abc")都作为此类的实例实现。其实就是说,程序当中所有的双引号字符串,都是String类的对象。(就算没有new,也照样是。)
- 字符串的特点:
- 字符串的内容永不可变【重点】
- 正是因为字符串不可改变,所以字符串是可以共享使用的。
- 字符串效果上相当于是char[]字符数组,但是底层原理是byte[]字节数组。
7.Arrays--是一个与数组相关的工具类,里面提供了大量静态方法(静态方法可通过方法名直接调用),用来实现数组常见的操作。
- public static String toString(数组):将参数数组变成字符串(按照默认格式:[元素1,元素2,元素3......])
- public static void sort(数组):按照默认升序(从小到大)对数组的元素进行排序。
- 备注:
1. 如果是数值,sort默认按照升序从小到大
2. 如果是字符串,sort默认按照字母升序
3. 如果是自定义的类型,那么这个自定义的类需要有Comparable或者Comparable接口的支持。
- 举例:
```
//题目:请使用Arrays相关的API,将一个随机字符串中的所有字符升序排列,并倒序打印
public class ArraysPractise {
public static void main(String[] args) {
String str = "zcxjsded456jkefbf";
//如何进行升序排列:sort
//要使用Arrays.sort 必须是一个数组才行
//如何将字符串转为字符数组:toCharArray
char[] chars = str.toCharArray();
Arrays.sort(chars);
System.out.println(chars);
//如何倒序打印:字符反向输出
for(int i = chars.length-1;i>=0;i--){
System.out.print(chars[i]+" ");
}
}
}
```
运行结果:
```
456bcddeeffjjksxz
z x s k j j f f e e d d c b 6 5 4
```
8.Math--数学工具类,里面提供大量的静态方法,完成与数学运算相关的操作。
- public static double abs(double num):获取绝对值。
- public static double ceil(double num):向上取整。
- public static double floor(double num):向下取整。
- public static long round(double num):四舍五入。
- Math.PI代表近似的圆周率常量(π),是个double值。
- 使用方法:Math.abs(-3.14) //3.14
- 举例:
```
/**
* 题目:
* 计算在-10.8到5.9之间,绝对值 大于6或者小于2.1的整数有多少个?
* 分析:
* 1.确定范围、确定次数 就使用for循环
* 2.起点位置-10.8应该转换成为-10,两种方法实现:
* 2.1 可以使用Math.ceil方法,向上(向数轴的正方向)取整
* 备注:如果使用这种的方式,结果-10.8取绝对值后就会变成-10.0
* 2.2 强制类型转换,转成int,会自动舍弃所有小数位
* 3.每一个数字都是整数,所以步进表达式应该是num++,这样每次都是+1的
* 4.如何拿到绝对值,Math.abs方法
* 5.一旦发现了一个数字,需要让计数器++,进行统计
*/
public class MathPractise {
public static void main(String[] args) {
double min = -10.8;
double max = 5.9;
int count = 0;
for(int i = (int)min;i<=max;i++){
if(Math.abs(i)>6 || Math.abs(i)<2.1 ){
System.out.print(i+" ");
count++;
}
}
System.out.println();
System.out.println("总共有:"+count+"个");
}
}
```
运行结果:
```
-10 -9 -8 -7 -2 -1 0 1 2
总共有:9个
```
Java--常用API介绍的更多相关文章
- Java 常用API(二)
目录 Java 常用API(二) 1. Object类 2. Date类 概述 构造方法和成员方法 3. DateFormat类 概述 SimpleDateFormat类 练习 4. Calendar ...
- Java常用API(Arrays类)
Java常用API(Arrays类) 什么是Arrays类? java.util.Arrays 此类包含用来操作数组的各种方法,比如排序和搜索等.其所有方法均为静态方法,调用起来 非常简单. 这里我们 ...
- Java常用API(String类)
Java常用API(String类) 概述: java.lang.String 类代表字符串.Java程序中所有的字符串文字(例如 "abc" )都可以被看作是实现此类的实例 1. ...
- Java常用API(ArrayList类)
Java常用API(ArrayList类) 我们为什么要使用ArrayList类? 为了更加方便的储存对象,因为使用普通的数组来存储对象太过麻烦了,因为数组的一个很大的弱点就是长度从一开始就固定了,所 ...
- Java常用API(Scanner类)
Java常用API( Scanner类)1 1.Scanner类 首先给大家介绍一下什么是JavaAPI API(Application Programming Interface),应用程序编程接口 ...
- Java 常用API(一)
目录 Java 常用API(一) 1. Scanner类 引用类型的一般使用步骤 Scanner的使用步骤 例题 2. 匿名对象 概述 匿名对象作为方法的参数 匿名对象作为方法的返回值 3. Rand ...
- Java常用API(Math类)
Java常用API(Math类) Math类的作用 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且 ...
- Java常用API(Random类)
Java常用API(Random类) Random:是一个用于生成随机数的类 构造方法 public Random() :创建一个新的随机数生成器. 返回随机数的方法 public int nextI ...
- java基础3.0:Java常用API
本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...
- java常用API的总结(1)
本篇是对于这一段时间以来接触到的常用api的一些总结,便于以后的查阅.... 一.正则表达式 对于正则表达式,我的感觉就是当我们在做某些题的时候正则表达式会省去我们很多的时间,并且正则表达式的使用格式 ...
随机推荐
- centos 7.6 配置VNC
一.安装 1. 以root用户运行以下命令来安装vncserver; yum install tigervnc-server 2. 同样运行以下命令来安装vncviewer; yum instal ...
- Mybatis3.1-[tp-30-31]-select_resultMap_关联查询_级联属性封装结果__association定义关联对象封装规则
笔记要点 出错分析与总结 在全局配置中,映射dao包下的全部: <mapper> <package name="com.dao"/> </mapper ...
- How to parse unix timestamp to time.Time
The time.Parse function does not do Unix timestamps. Instead you can use strconv.ParseInt to parse ...
- Python经典算法-猴子吃桃-思路分析
问题: 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾就多吃了一个.第二天早上又将剩下的桃子吃了一半,还是不过瘾又多吃了一个.以后每天都吃前一天剩下的一半再加一个.到第10天刚好剩一个.问猴子第一天 ...
- python 查询每周最后一个工作日
背景: 做定时任务时,一般都是写死每周五XXXXX,但有时遇到节假日的情况,周五可能不是本周最后一个工作日 代码如下: import urllib2,datetime,json nowTime = d ...
- 网站性能优化——DNS预热与合并HTTP请求
DNS预热 一次DNS解析耗时20-120ms, 当网页中使用的域名较多时,DNS预热节省的时间还是非常可观的 先看效果 预热的目的: 减少请求次数 提前对DNS预获取 预热的方式 爬虫 APP 网页 ...
- 数位DP【模板】
经典题型 数位 DP 问题往往都是这样的题型,给定一个闭区间 $[l, r]$,让你求这个区间中满足 某种条件 的数的总数. 强烈推荐 OI Wiki——数位DP 例题 BZOJ 1026 题目:wi ...
- HTML 008 head
HTML <head> 查看在线实例 <title> - 定义了HTML文档的标题使用 <title> 标签定义HTML文档的标题 <base> - 定 ...
- hive优化,并行查询
1.hive中控制并行执行的参数有如下几个: $ bin/hive -e set | grep parall hive.exec.parallel=false hive.exec.parallel.t ...
- sql server 子查询 和exists使用
概述 子查询的概念: 当一个查询是另一个查询的条件时,称之为子查询.子查询可以嵌套在主查询中所有位置,包括SELECT.FROM.WHERE.GROUP BY.HAVING.ORDER BY. 外面的 ...