JAVA进阶10
间歇性混吃等死,持续性踌躇满志系列-------------第10天
1、Random

package cn.intcast.day08.demo01;
import java.util.Random;
public class Demo02Random {
public static void main(String[] args) {
Random r = new Random();
int s = r.nextInt();
System.out.println("生成的随机数为:"+s);
}
}
运行结果图

2、JFrame框架窗体

package code0320; import javax.swing.*;
import java.awt.*; //定义一个类继承JFrame类
public class Example1 extends JFrame {
//定义一个CreateJFrame()方法
public void CreateJFrame(String title){
//实例化一个JFrame对象
JFrame jf = new JFrame(title);
//获取一个容器
Container container = jf.getContentPane();
//创建一个JLabel标签
JLabel jl = new JLabel("这是一个JFrame窗体");
//使标签上的文字居中
jl.setHorizontalAlignment(SwingConstants.CENTER);
//将标签添加到容器中
container.add(jl);
//设置容器的背景颜色
container.setBackground(Color.white);
//使窗体可视
jf.setVisible(true);
//设置窗体大小
jf.setSize(400,350);
//设置窗体关闭方式
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
//在主方法中调用CreateJFrame()方法
public static void main(String[] args) {
new Example1().CreateJFrame("JFrame窗体");
}
}
运行结果图

3、Random:猜数字小游戏

package cn.intcast.day08.demo01; /*
*思路
* 1 首先需要产生一个随机数,并且一旦产生不再变化
* 2 需要键盘输入,所以用到了Scanner
* 3 获取键盘输入的数字,用Scanner当中的nextInt方法
* 4 已经得到了两个数字,判断(if)一下,
* 如果太大了,提示太大,并重试
* 如果太小,提示太小,并重试
* 5 重试就是再来一次,循环次数不确定,用while(true)
*
*/ import java.util.Random;
import java.util.Scanner; public class Demo02Random {
public static void main(String[] args) {
Random r = new Random();
int num = r.nextInt(100)+1;
Scanner s = new Scanner(System.in);
while (true){
//键盘输入猜测的数字
System.out.println("请输入你猜测的数字:");
int num1 = s.nextInt();
if (num<num1){
System.out.println("太大,重试");
}else if (num>num1){
System.out.println("太小,重试");
}else {
System.out.println("恭喜你,猜中了!!!");
//如果猜中,不再重试
break;
}
}
System.out.println("游戏结束。");
}
}
运行结果图

4、ArrayList集合
package cn.intcast.demo10;
public class Person {
private String name;
private int age;
private String sex;
//无参构造
public Person() {
}
//全参构造
public Person(String name, int age, String sex) {
this.name = name;
this.age = age;
this.sex = sex;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
Person类
package cn.intcast.demo10;
/*
* 题目:
* 定义一个数组,用来存储3个person对象
*
* 数组有一个缺点:一旦创建,则程序运行期间长度不可以发生改变
*/
public class Array01 {
public static void main(String[] args) {
//首先创建一个长度为3的数组,里面用来存放person类型的对象
Person [] array = new Person[4];
Person one = new Person("林丹",24,"男");
Person two = new Person("姚明",25,"男");
Person three = new Person("詹姆斯",26,"男"); //将one当中的地址值赋值到数组的0号元素位置
array[0] = one;
array[1] = two;
array[2] = three; System.out.println(array[0].getName());
System.out.println(array[1].getName());
System.out.println(array[2].getName());
}
}
数组
运行结果图

JAVA进阶10的更多相关文章
- java进阶(10)--String(StringBuff、StringBuilder)
一.基本概念 1.String为引用数据类型,使用双引号 2.字符串数组存储在方法区的内存池,因为开发过程种使用过于频繁 3.String类已经重写了equals,比较时使用,同时也重写了toStri ...
- Java 进阶 hello world! - 中级程序员之路
Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...
- 当我们说线程安全时,到底在说什么——Java进阶系列(二)
原创文章,同步发自作者个人博客,转载请以超链接形式在文章开头处注明出处http://www.jasongj.com/java/thread_safe/ 多线程编程中的三个核心概念 原子性 这一点,跟数 ...
- 从ConcurrentHashMap的演进看Java多线程核心技术 Java进阶(六)
本文分析了HashMap的实现原理,以及resize可能引起死循环和Fast-fail等线程不安全行为.同时结合源码从数据结构,寻址方式,同步方式,计算size等角度分析了JDK 1.7和JDK 1. ...
- JAVA进阶之旅(二)——认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践
JAVA进阶之旅(二)--认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践 我们继续聊JAVA,这次比较有意思,那就是反射了 一.认识 ...
- JAVA进阶之旅(一)——增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法
JAVA进阶之旅(一)--增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法 学完我们的java之旅,其实收获还是很多的,但是依然还有很 ...
- Java进阶(三十八)快速排序
Java进阶(三十八)快速排序 前言 有没有既不浪费空间又可以快一点的排序算法呢?那就是"快速排序"啦!光听这个名字是不是就觉得很高端呢. 假设我们现在对"6 1 2 7 ...
- Java进阶(三十七)java 自动装箱与拆箱
Java进阶(三十七)java 自动装箱与拆箱 前言 这个是jdk1.5以后才引入的新的内容.java语言规范中说道:在许多情况下包装与解包装是由编译器自行完成的(在这种情况下包装称为装箱,解包装称为 ...
- Java进阶(三十二) HttpClient使用详解
Java进阶(三十二) HttpClient使用详解 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们 ...
随机推荐
- day 9~11 函数
今日内容 '''函数四个组成部分函数名:保存的是函数的地址,是调用函数的依据函数体:就是执行特定功能的代码块函数返回值:代码块执行的结果反馈函数参数:完成功能需要的条件信息1.函数的概念2.函数的定 ...
- 理解mysql执行多表联合查询
阅读目录 一:inner join(内连接) 二:left join(左连接) 三:right join(右连接) 四:cross join(交叉连接) 五:union操作 六:node+mysql ...
- python 获取秒级时间间隔
import datetime,time start_tm=datetime.datetime.now() time.sleep() end_tm=datetime.datetime.now() pr ...
- Python学习--Python运算符
什么是运算符? 举个简单的例子 4 + 5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: 算数运算符 比较(关系)运算 ...
- Linux内存管理 (1)物理内存初始化
专题:Linux内存管理专题 关键词:用户内核空间划分.Node/Zone/Page.memblock.PGD/PUD/PMD/PTE.lowmem/highmem.ZONE_DMA/ZONE_NOR ...
- SkylineGlobe TerraExplorer for Web 7.1.0版本 接口示例
在SkylineGlobe TerraExplorer for Web 7.1.0版本(俗称H5免插件版本)中,如何使用SGWorld接口的三维视域分析方法呢? 请参考下面的示例: 通过下面的代码大家 ...
- 【Swift 4.2】uuid 取 hashCode(与 Java/Go/Kotlin 一致)
extension String { func hashCode() -> Int32 { let components = self.split(separator: "-" ...
- Python项目部署-使用Nginx部署Django项目
一.nginx介绍及部署 二.nginx部署路飞学城代码 nginx配置安装 同样,nginx也有很多的安装方式: 1)源码安装(运维偏向:规范,便于配置管理) 2)yum,rpm安装(为了效率可以选 ...
- 关于Qt的StyleSheet作用范围
Qt的StyleSheet是很方便的一个设置各种控件风格形态的属性,但是默认的StyleSheet会作用于所有的子控件,容易带来麻烦,以下几种情况,可以限制作用范围 以QTextEdit为例,实体名为 ...
- HBase数据库配置中各配置项的释义及默认值
2018-11-26 16:09 2018-12-20 15:44 摘自HBASE官方网站 http://hbase.apache.org/book.html#_introduction 第7.2 ...