Java第四天,随机数如何生成?ArrayList如何使用?
虽然很多时候我们查阅Java API文档,但是对于一些必要的类,我们还是需要去了解的。因为这样的情况下,我们就可以尽量的去缩短开发的周期。接下来我们认识一下哪些API类是必须熟记的。
Random
这是一个随机数类,可以产生制定范围的随机数。具体使用方法如下 :
public class randomLearn {
public static void main(String[] args){
System.out.println(''您获得的随机数是'' + getRandom(100));
}
public static int getRandom(int scope){
Random r = new Random();
return r.nextInt(scope);
}
}
程序截图
本程序中我们只是示例使用了获取Int类型的随机数。也可以获取其他类型的。r.nextInt(x); 中的x是设定的取值范围,可以为空,如果为空的话,获取的就是int类型的范围。
2.ArrayList<E>
我们需要注意以下几点.
(1).Java中可以用数组存储对象,即对象数组,但是它是引用类型,本质就是存储的地址值,这点要切记。
(2).对象数组虽然可以用来存储对象,但是它定义好以后就不能扩充空间了。
(3).ArrayList的出现就是为了解决数组无法动态增加空间的这个问题。有点类似与C语言中数组和链表的区别。
(4).后面的 <E> 是泛型的意思。就是说这个ArrayList集合所存储的数据类型由<>中的内容制定。即 E 类型。
(5).泛型只能是引用类型,不能是基本类型。切记。
(6).除了ArrayList集合,其他集合的add添加动作不一定成功。所以需要判断。
(7).ArrayList如果想添加基本类型,可以使用基本类型对应的包装类(java就两种数据类型,一种是基本类型,一种是引用类型)。
(8).对于Arraylist,直接使用打印输出的是集合中存储的值,而并非地址值。
public class arrayListLearn {
public static void main(String[] args){
showInfoOne();
showInfoTwo();
}
public static void showInfoOne(){
person one = new person(20,''小李'');
person two = new person(21,''小理'');
person three = new person(22,''小丽'');
person[] crowd = new person[3];
crowd[0] = one;
crowd[1] = two;
crowd[2] = three;
for(int i = 0;i < 3;i++){
System.out.println(''第'' + (i + 1) + ''个学生是'' + crowd[i].getAge() + ''岁的'' + crowd[i].getName() + ''同学'');
}
}
public static void showInfoTwo(){
ArrayList<person> crowd = new ArrayList<>();
crowd.add(new person(50,''小王''));
crowd.add(new person(51,''小旺''));
crowd.add(new person(52,''小望''));
for (int i = 0; i < crowd.size(); i++) {
System.out.println(''姓名:'' + crowd.get(i).getName() + '',年龄:'' + crowd.get(i).getAge());
}
}
}
class person{
int age;
String name;
person(int age,String name){
this.age = age;
this.name = name;
}
int getAge(){
return this.age;
}
String getName(){
return this.name;
}
}
程序截图
3.String
注意:
(1)Java代码中的所有字符串类型都是String类的对象,即使没有用new。
(2)Java代码中,字符串(String)是常量,一旦定义则不可更改。
(3)Java中,字符串有四种创建方式,其中包括一种直接创建方式和三种构造创建方式。
(4).Java中,“==” 对于基本类型来说是数值的比较,而对于引用对象来说,它进行的是地址值的比较。
(5).双引号创建的字符串在常量池当中,但new的不在常量池当中。
(6) 基本类型、局部变量是存放于栈内存中的。
(7) new创建的实例化对象及数组,是存放于堆内存当中,用完之后靠垃圾回收机制不定期自动消除。
三种构造创建方式:
public String();
public String(char[] chars);
pubilc String(byte[] bytes);
代码:
public class stringLearn {
public static void main(String[] args) {
showInfoOne();
showInfoTwo();
showInfoThree();
}
public static void showInfoOne(){
String infoOne = new String();
System.out.println(''第一个字符串是 '' + infoOne);
}
public static void showInfoTwo(){
char[] charString = {'L','Y','Y'};
String infoTwo = new String(charString);
System.out.println(''第二个字符串是 '' + infoTwo);
}
public static void showInfoThree(){
byte[] byteString = {100,101,102};
String infoThree = new String(byteString);
System.out.println(''第三个字符串是 ''+ infoThree);
}d
}
构造方式创建字符串
一种直接创建方式:
String infoFour = ''the_fourth'';
Java第四天,随机数如何生成?ArrayList如何使用?的更多相关文章
- Java集合(四)--基于JDK1.8的ArrayList源码解读
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess ...
- java基础基础总结----- 随机数(产生四个随机数)
前言:在开发的时候经常会遇见,一些验证码登录,其实这些东西,很简单.我曾经开发过一个验证码登录的页面,那时用的插件.但是作为一个合格的开发者,要了解其内部的核心知识,有些东西,可以不深入了解,但是要做 ...
- java随机数的生成
我们经常会用到随机数的生成,作为唯一性的id或者标识: long now = System.currentTimeMillis(); SimpleDateFormat dateFormat=new S ...
- java ssl https 连接详解 生成证书 tomcat keystone
java ssl https 连接详解 生成证书 我们先来了解一下什么理HTTPS 1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over ...
- Java泛型四:Java泛型总结
原文地址https://www.cnblogs.com/lwbqqyumidi/p/3837629.html 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 publ ...
- Java的四种内部类
Java的四种内部类包括如下: 成员内部类 静态内部类 局部内部类 匿名内部类 成员内部类: 定义在另一个类(外部类)的内部,而且与成员方法和属性平级叫成员内部类,......相当于外部类的非静态方法 ...
- 《Thinking In Java第四版》拾遗
<Thinking In Java第四版>拾遗 转自我的github(http://katsurakkkk.github.io/2016/05/Thinking-In-Java%E7%AC ...
- JAVA提高四:反射基本应用
在前面一节<http://www.cnblogs.com/pony1223/p/7659210.html>,我们学习了JAVA的反射的相关知识,那么本节我们对前面所学习的知识做一个应用相关 ...
- 百度地图和高德地图坐标系的互相转换 四种Sandcastle方法生成c#.net帮助类帮助文档 文档API生成神器SandCastle使用心得 ASP.NET Core
百度地图和高德地图坐标系的互相转换 GPS.谷歌.百度.高德坐标相互转换 一.在进行地图开发过程中,我们一般能接触到以下三种类型的地图坐标系: 1.WGS-84原始坐标系,一般用国际GPS纪录仪记 ...
- 深入分析Java反射(四)-动态代理
动态代理的简介 Java动态代理机制的出现,使得Java开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类.代理类会负责将所有的方法调用分派到委托对象上反射执行,在分 ...
随机推荐
- 提示消息无缝向上滚动(vue)
<div class="order-tips__message-item" :class="getClass(index)" v-for="(o ...
- vuepress-theme-reco + Github Actions 构建静态博客,部署到第三方服务器
最新博客链接 Github链接 查看此文档前应先了解,vuepress基本操作 参考官方文档进行配置: vuepress-theme-reco VuePress SamKirkland / FTP-D ...
- Python3学习之路~10.3 论事件驱动与异步IO
论事件驱动----详见:https://www.cnblogs.com/alex3714/articles/5248247.html Select\Poll\Epoll异步IO----详见:http: ...
- canvas绘制折线图
效果图: 重难点: 1.画布左上角的顶点的坐标为(0 ,0),右下角的坐标最大,与平常思维相反 2.数据的处理 html代码: <!DOCTYPE html><html lang=& ...
- 为什么我推荐你用Ubuntu开发?
前言: 鱼哥在做多媒体开发时,领导倒逼我们用Ubuntu开发,后来才发现它的牛逼和高效.所以对于还在用Windows上开发的朋友,鱼哥建议,趁周末,搞个双系统,切到Ubuntu上开发, Ubuntu最 ...
- 题解 P1985 【[USACO07OPEN]翻转棋】
讲讲我的做法 刚开始做这道题的时候,看到\(n<=15\),我这个\(6\)年级的蒟蒻的第1反应是状压\(dp\).貌似不好做.然而,等到我在省中集训的时候,老师的一席话,让我豁然开朗.今天我准 ...
- 基于KNN的发票识别
项目概况: 有一个PDF文件,里面的每页都是一张发票,把每页的发票单独存为一个PDF并用该发票的的发票号码进行文件的命名,发票号码需要OCR识别,即识别下图中红色方块的内容. 一:拆分PDF 现有一个 ...
- 常见Web安全漏洞--------防盗链
1,防盗链防止盗用自己服务上的东西... 2,XSS服务上有这么一张图: <!DOCTYPE html> <html> <head lang="en" ...
- K 最近邻(k-nearest neighbours,KNN)算法
KNN用于分类和回归,需要考虑最近的邻居. 分类就是编组. 回归就是预测结果(如数字). 特征抽取意味着将物品(如水果或用户)转换为一系列可比较的数字. 能否挑选合适的特征事关KNN算法的 ...
- flask中 多对多的关系 主从表之间的的增删改查
# 角色表模型class Role(db.Model): r_id = db.Column(db.Integer, primary_key=True) r_name = db.Column(db.St ...