用java编写个程序并注释
看我的吧,任意取两张扑克牌
public class JLab0203 {
static final String suits[]={"黑桃","红桃","梅花","方片"};
static final String ranks[] ={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
static Card[] cards=new Card[52];
/**
* 初始化扑克牌数组
*/
public static void init(){
for(int i=0;i<suits.length;i++){
for(int j=0;j<ranks.length;j++){
cards[i*ranks.length+j]=new Card(suits[i],ranks[j]);
}
}
}
public static void swap1(Card c1,Card c2){
Card c=c1;
c1=c2;
c2=c;
}
public static void swap1(int i,int j){
Card c=cards[i];
cards[i]=cards[j];
cards[j]=c;
}
public static void swap2(Card c1,Card c2){
String s=c1.suit;
c1.suit=c2.suit;
c2.suit=s;
String r=c1.rank;
c1.rank=c2.rank;
c2.rank=r;
}
/**
* @param args
*/
public static void main(final String[] args) {
init();
//任取两张牌
Card c1=cards[10];//1000
Card c2=cards[12];//2000
System.out.println("第11张牌是:"+c1+" 第13张牌是:"+c2);
/* swap1(c1,c2);//地址值 引用值
System.out.println("执行swap1(c1,c2)后");
System.out.println("c1引用的牌是:"+c1+" c2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+" 第13张牌是:"+cards[12]);
*/
/* swap1(10,12);
//Card[10] 2000 Card[12] 1000
System.out.println("执行swap1(10,12)后");
System.out.println("c1引用的牌是:"+c1+" c2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+" 第13张牌是:"+cards[12]);
*/
swap2(c1,c2);
System.out.println("执行swap2(c1,c2)后");
System.out.println("c1引用的牌是:"+c1+" c2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+" 第13张牌是:"+cards[12]);
}
}
哪位JAVA高手帮帮忙解释一段程序????
这段程序就是用Graphics2D画出一个时钟 算法它中间已经写到了秒针是黑色 对分针用了 g2d.setColor(flag ? Color.RED : Color.BLACK); 3目判断语句Ellipse2D 椭圆 Line2D 坐标线段 Graphics2D 几何线段 Math 数学类多查查API 就什么都了解了
Java程序求解释
//以下这段程序的思想是:遍历data数组,以数组元素的值为HashMap的键,如果某个数组元素的值出现了一次,则在HashMap
//里以该元素为键的对应的值加1.
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();//生成一个HashMap,里面存放的元素是键-值对。
for (int m = 0; m < data.length; m++) {
Integer number = map.get(data[m]);//以data数组中的元素为键,返回该键对应的值。
if (number == null) {//如果不存在这个键对应的值,则number为0.number是用来统计随机数出现的次数的。
number = 0;
}
map.put(data[m], number + 1);//以data数组中的元素为键,随机数出现的次数加1为值,存入HashMap.
}
// System.out.println(map);
Set entrys = map.entrySet();//获得HashMap里元素的集合。
Iterator it = entrys.iterator();//获得HashMap里元素集合的游标
Entry en = null;
while (it.hasNext()) {//使用游标,遍历该集合
en = (Entry) it.next();
System.out.println("数" + en.getKey() + "出现了:" + en.getValue());//en.getKey()返回键,en.getValue()返回值
java程序解释,逐行解释,谢谢
你是在随机生成双色球的红球啊。
。
。
//定义String类型的一维数组,01 - 33 即双色球的红球
String[] pool = {"01","02","03","04","05","06","07",
"08","09","10","11","12","13","14","15","16",
"17","18","19","20","21","22","23","24","25",
"26","27","28","29","30","31","32","33"};
//定义一个长度为32的boolean类型的数组,用于判断该随机数是否已经占用
boolean[] used = new boolean[pool.length];
//定义一个随机数生成类
Random random = new Random();
//定义用于最终存储6个红球的String数组
String[] balls = new String[6];
//定义下标
int i=0;
while(true){
//随机获取一个0-32的下标
int index = random.nextInt(pool.length);//[0,33)
//如果这个下标已经被占用了,跳出本次循环
if(used[index]){
continue;
}
//将该下标对应的那个红球的数赋值给上面定义的数组
balls[i++] = pool[index];
//将该红球设置为占用,即已经摇出来了
used[index]=true;
//如果是最后一个球,跳出整个循环
if(i==balls.length){
break;
}
}
//对结果进行排序
Arrays.sort(balls);
balls = Arrays.copyOf(balls, balls.length+1);
balls[balls.length-1]=pool[random.nextInt(16)];
简单java程序意思
//java中预定义输入是调用的util包里的scanner类的方法,所以你开头必须要调包代码如下: import java.util.scanner; public class simple { public static void main(string []args) { // 新建一个对象,可以预定义输入 scanner scanner = new scanner(system.in); system.out.println("请输入姓名:"); // 变量名.next 表示输入的是string类型的值 string name = scanner.next(); system.out.println("请输入性别:"); string sex = scanner.next(); // 代表连接字符串的意思 system.out.println("姓名:" name "性别:" sex) } }