您的位置:首页 > 职场人生

黑马程序员——Java语言基础(代码示例篇)

2015-05-19 21:08 225 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------
Java语言基础(二)
 本文将会列举一些学习过程中的小例子,希望大家互相指导,借鉴学习。。。。。。。。
一、for语句示例
1、打印九乘法表
// 打印九乘法表
for (int x = 1; x <= 9; x++) {
for (int y = 1; y <= x; y++) {
System.out.print(y + "*" + x + "=" + x * y + "\t");
}
System.out.println();
}

2、求1+2+3+4+...+100=?
// 求1+2+3+4+...+100=?
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
System.out.println(sum);

3、求10的阶乘
// 求10的阶乘.
int n = 1;
for (int i = 0; i <= 10; i++) {
n *= i;
}
System.out.println(n);
4、输出1~1000之内能被5整除的数且每行输出三个
// 输出1~1000之内能被5整除的数且每行输出三个;
for (int m = 1; m <= 1000; m++) {
if (m % 5 == 0) {
System.out.print(m + "\t");
}
if (m % (5 * 3) == 0) {
System.out.println();
}
}

 二、分支语句
1、if else
 练习:判断闰年
//	闰年:能被4整除但不能被100整除; 能被400整除。
public static void leapYear() {

int year;
boolean isLeapYear;
for (int i = 0; i < 5; i++) {
// 随机产生5个年份
year = random(1980, 2030);
// 闰年判断条件
isLeapYear = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
if (isLeapYear) {
System.out.println(year + "年是闰年");
} else {
System.out.println(year + "不是闰年");
}
}




 2、switch case
判断成绩优良中差
//练习:判断成绩优良中差 优
public static void judgeMark() {
for (int i = 0; i < 6; i++) {
// 随机产生分数
int mark = random(50, 100);
switch (mark / 10) {
case 10:
case 9:
System.out.println(mark + "分: 优");
break;
case 8:
System.out.println(mark + "分: 良");
break;
case 7:
System.out.println(mark + "分: 中");
break;
case 6:
System.out.println(mark + "分: 差");
break;
default:
System.out.println(mark + "分: 不及格");
}
}
}




三、扩展训练
1、打印空心方形
// 打印空心方形
public static void printXing(int m, int n) {
for (int x = 0; x < m; x++) {
for (int y = 0; y < n; y++) {
if (x == 0 || x == m - 1 || y == 0 || y == n - 1)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
}
}




2、十进制转换成二进制、八进制、十六进制
//进制转换
class Array_chaAll {
public static void main(String[] args) {
toBin(-6);
toHex(60);
toBa(60);
}

// 十进制-->二进制
public static void toBin(int num) {
trans(num, 1, 1);
}
// 十进制-->十六进制
public static void toHex(int num) {
trans(num, 15, 4);
}
// 十进制-->八进制
public static void toBa(int num) {
trans(num, 7, 3);
}
// 进制转换方法
public static void trans(int num, int base, int offset) // 被转数、&运算数、位移位数
{
if (num == 0)// 基数等于0直接返回
{
System.out.println(0);
return;
}
char[] chs = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A',
'B', 'C', 'D', 'E', 'F', };
char[] arr = new char[32];
int pos = arr.length;// 存放数组的指针
while (num != 0) {
int temp = num & base;
arr[--pos] = chs[temp];// 倒叙存于数组
num = num >>> offset;
}
// 打印结果
for (int x = pos; x < arr.length; x++) {
System.out.print(arr[x]);
}
System.out.println();
}
}



 
2.1递归、取余数方法实现进制转换(只能求正数—仅供参考)

//递归方法
public static void chaHex_1(int n)
{
if(n>=16)
chaHex_1(n/16);
if(n%16<10)
System.out.print(n%16);
else
System.out.print((char)(n%16-10+'A'));
}
//取余数方法
public static void chaHex_2(int n)
{
StringBuffer sb=new StringBuffer();
while(n>0)
{
//取余数
if(n%16<10)
sb.append(n%16);
else
sb.append((char)(n%16-10+'A'));
n=n/16;
}
System.out.println(sb.reverse());
}
//位运算方法
public static void chaHex_3(int n)
{
StringBuffer sb=new StringBuffer();
while(n>0)
{
int temp=n&15;
if(temp<10)
sb.append(temp&15);
else
sb.append((char)(temp-10+'A'));
n=n>>>4;
}
System.out.println(sb.reverse());
}
}


 四、数组工具类
/*
*工具类的制作
*
*因为工具类没有特有数据,为实现某些功能而存在
*可直接通过类名调用,所以其方法都用public static修饰
**/
class ArrayTool
{
//求数组最大值功能
public static int getMax(int[] arr)
{
int max = 0;
for (int x=1;x<arr.length ;x++ )
{
if(arr[x]>arr[max])
max = x;
}
return arr[max];
}
//求数组最小值功能
public static int getMin(int[] arr)
{
int min = 0;
for (int x=1;x<arr.length ;x++ )
{
if(arr[x]<arr[min])
min = x;
}
return arr[min];
}

//排序功能——选择排序
public static void selectSort(int[] arr)
{
for (int x=0;x<arr.length-1 ;x++ )
{
for (int y=x+1;y<arr.length ;y++ )
{
if(arr[x]>arr[y])
{
swap(arr,x,y);
}
}
}
}
//排序功能——冒泡排序
public static void bubbleSort(int[] arr)
{
for (int x=0;x<arr.length-1 ;x++ )
{
for (int y=0;y<arr.length-x-1 ;y++ )
{
if(arr[y]>arr[y+1])
{
swap(arr,y,y+1);
}
}
}
}
//元素置换功能抽取
public static void swap(int[] arr,int a,int b)
{
int temp = arr[a];
arr[a] = arr[b];
arr[b] =temp;
}

//打印功能 需求:[a1,a2,a3,a4,。。。。。]
public static void printArray(int [] arr)
{
System.out.print("[");
for (int x=0;x<arr.length ;x++ )
{
if(x!=arr.length-1)
System.out.print(arr[x]+", ");
else
System.out.println(arr[x]+"]");
}
}
}


 
-----Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: