⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 10.txt

📁 是一个 java 基础学习软件 有设计说明
💻 TXT
字号:
//
1.
求奇数相加
public class AddOddTest
{
	public static void main(String args[])
	{
	    AddOdd odd = new AddOdd();
	    odd.add(99);
	    odd.show();
	}
}
class AddOdd
{
	private int odd;
	public void add(int j)
	{
		odd = 0
		for(int i=0;i<j;i+=2)
	    {
		  odd += i ;
		}
	}
	public void show ()
	{
		System.out.println(odd);
	}
}

//
2.
/**
目标/功能要求:
	定义一个工具类,实现下述两项功能:
	1.将任意输入的十进制数据转换为二进制形式返回;
	2.将任意输入的二进制数据转换为十进制形式返回。
说明/提示:
	1.工具类可定义成如下结构:
public class ConvertTool{
	//将一个byte/short/char/int型变量转变为二进制字符串的形式。
	public String conversion(int data){……}
	//将一个长度为8/16/32位的二进制数字符串作为输入,将其转变为整数后输出。
	public int deconversion(String data){……}
}

*/
import java.lang.*;

public class BinaryTest
{
	public static void main(String[] args)
	{
		int i = -18;
		String s= "11000000010100010000000001010001";
		ConvertTool binary = new ConvertTool ();
		System.out.println(i+"   "+binary.conversion(i));
		System.out.println(s+"   "+binary.deconversion(s));

		System.out.println(18+"   "+binary.conversion(18));
		System.out.println(1100011+"   "+binary.deconversion("1100011"));
	}
}
//工具类  class ConvertTool
class ConvertTool
{
	public String conversion(int data)         //  十进制 转成 二进制
	{
		String s = "";
		for(int i = 0;i<32 ;i++)
		{
			if(((1<<i)&data)==0)
				s = "0"+s;
			else
				s = "1"+s;
		}
		return s;
	}
/////////-------------------------/////// 二进制 转成 十进制
	public int deconversion(String data)
	{
		int j = data.length();
		int de = 0;
		if( j<32 || data.charAt(0)=='0')      // 正数
		{
			for (int i=j ; i>0 ; i--)
			{
				if(data.charAt(i-1)=='1')
					de = de + (int)Math.pow(2,j-i);
			}
			return de;
		}
		else   //如果是 负数     二进制----十进制:减1 ,逐位取反,转换为十进制正数,乘-1
		{
			for (int i=32 ; i>1 ; i--)
			{
				if(data.charAt(i-1)=='1')
					de = de + (int)Math.pow(2,j-i);
			}
			de = de -1;
			String t = conversion(de);
			String s = "";
			//逐位取反
			for (int i=32 ; i>1 ; i--)
			{
				if(t.charAt(i-1)=='1')
					s =  s+"0";
				else
					s =  s+"1";
			}
			//转换为十进制正数
			for (int i=j-1 ; i>0 ; i--)
			{
				if(s.charAt(i-1)=='1')
					de = de + (int)Math.pow(2,j-i);
			}
			return -de;
		}

	}

}


//

3.
/**写一方法,在调用时通过参数输入年号,判断是否为闰年。
算法: 根据闰年的判断条件
2	当年号能被4整除但不能被100整除时, 为闰年。
2	当年号能被400整除时, 为闰年。
*/
// show  Leap Year

public class LeapyearTest
{
	public static void main(String[] args)
	{
		int i =  Integer.parseInt(args[0]);
		LeapYear ly = new LeapYear(i);
		ly.show();
	}
}


//  define class Leap Year

class LeapYear
{
	int year ;
	boolean IsLeapYear;
	public LeapYear(){}
	public LeapYear(int leapYear)
	{
		year = leapYear;
		if ((year%4==0)&&((year%100)!=0))    //当年号能被4整除但不能被100整除时, 为闰年
		{
			IsLeapYear = true ;
		}
		else if (year%400==0) 				 //当年号能被400整除时, 为闰年
		{
			IsLeapYear = true ;
		}
		else
		{
			IsLeapYear = false;
		}
	}
	public void show()
	{
		if(IsLeapYear)
			System.out.println(year +"年是闰年。");
		else
			System.out.println(year+ "年不是闰年。");
	}
}

//
4
//input ComputerName 得到网络上机器的Ip Address

import java.net.*;

public class netTest {
  public static void main(String[] args)
    throws Exception {
   	if(args.length != 1) {
      System.err.println("Usage: WhoAmI MachineName");
      System.exit(1);
    }
    InetAddress a = InetAddress.getByName(args[0]);
    System.out.println();
    System.out.println("计算机名称/IP地址:     "+a);
  }
}

//
/**
stack

目标/功能要求:
	定义一个方法,实现下述功能:
1.输入任意合法的四则表达式字符串,计算并输出运算结果,同时将结果返回;
2.运算符只使用'+' , '-' , '*' , '/'四种,不允许使用'(' , ' )',不考虑优先顺序。
?
说明/提示:
1.方法结构:
public int calString(String s){	……}

*/
import java.lang.*;

public class Opration1Test
{
	public static void main(String[] args)
	{
		String s = "-12+400*6-12/6";
		Opration1Test stack = new Opration1Test();
		int n = stack.calString (s);
		System.out.println(s+ " = "+n);

	}
	//public int calString(String s){	……}
	public int calString (String s )
	{
		int j = s.length();
		String t ;
		char ch;
		StackTest mystack =new  StackTest (10);
		int n = 0,m= 0;
		int counter = 0;
		String temp;
		int add =0, sub=0 ,mul=0 ,dev=0;
		for (int i = 0;i<j; i++)
		{
			t = s.substring(i,i+1);
			ch = t.charAt(0);
			switch(ch)
			{
				case  '+':
					if ( n!=0 )
					{	m = n;n=0;}
					for (int k = counter ;counter>0;counter--)
					{
						n += mystack.pop()*(int)Math.pow(10,k-counter);
					}//System.out.println(n);

					if(add ==1) {n+=m;add =0; }
					if(sub== 1) {n =m-n;sub =0;}
					if(mul ==1) {n*=m;mul =0;}
					if(dev== 1) {n =m/n;dev =0;}
					add = 1;
					break ;
				case '-':
					if ( n!=0 )
						{m = n;n=0;}
					for (int k = counter ;counter>0;counter--)
					{
						n += mystack.pop()*(int)Math.pow(10,k-counter);
					}//System.out.println(n);
					if(add ==1) {n+=m;add =0;}
					if(sub== 1) {n =m-n;sub =0;}
					if(mul ==1) {n*=m;mul =0;}
					if(dev== 1) {n =m/n;dev =0;}
					sub=1;
					break ;
				case '*':
					if ( n!=0 )
						{m = n;n=0;}
					for (int k = counter ;counter>0;counter--)
					{
						n += mystack.pop()*(int)Math.pow(10,k-counter);
					}//System.out.println(n);
					if(add ==1) {n+=m;add =0;}
					if(sub== 1) {n =m-n;sub =0;}
					if(mul ==1) {n*=m;mul =0;}
					if(dev== 1) {n =m/n;dev =0;}
					mul = 1;
					break ;
				case '/':
					if ( n!=0 )
						{m = n;n=0;}
					for (int k = counter ;counter>0;counter--)
					{
						n += mystack.pop()*(int)Math.pow(10,k-counter);
					}//System.out.println(n);
					if(add ==1) {n+=m;add =0;}
					if(sub== 1) {n =m-n;sub =0;}
					if(mul ==1) {n*=m;mul =0;}
					if(dev== 1) {n =m/n;dev =0;}
					dev = 1;
					break ;
				default:

					if (mystack.push(Integer.parseInt(t)))
						counter++;
			}

		}
		if ( n!=0 )
						{m = n;n=0;}
			for (int k = counter ;counter>0;counter--)
			{
				n += mystack.pop()*(int)Math.pow(10,k-counter);
			}
			if(add ==1) {n+=m;add =0;}
			if(sub== 1) {n =m-n;sub =0;}
			if(mul ==1) {n*=m;mul =0;}
			if(dev== 1) {n =m/n;dev =0;}
		return n;
	}
/*
	public void change()
	{
		if ( n!=0 )
			{m = n;n=0;}
		for (int k = counter ;counter>0;counter--)
		{
			n += mystack.pop()*(int)Math.pow(10,k-counter);
		}
		if(add ==1) {n+=m;add =0;}
		if(sub== 1) {n =m-n;sub =0;}
		if(mul ==1) {n*=m;mul =0;}
		if(dev== 1) {n =m/n;dev =0;}
	}
*/
}



class MyStack{
	//属性声明部分
	private int top;
	private int[] array;
	private int size;
	//构造方法
	public MyStack(int size)
	{//创建并初始化一个堆栈对象
		this.size = size;
		array = new int[size];
		top =-1;
	}

	//压栈:若栈不满,则将data插入为栈顶元素,返回值为true;否则返回false。
	public boolean push(int data)
	{
		if(top < size-1)
		{
			array[++top] = data;
			return true;
		}
		return false;
	}

	//弹栈
	public int pop()
	{
		if(top >= 0)
		{
			return array[top--];
		}
		return 0;
	}

	//取栈顶元素(不进行弹栈操作)
	public int getTop()
	{
		if(top >= 0)
		{
			return array[top];
		}
		return 0;

	}

	//判断栈是否空
	public boolean isEmpty()
	{
		return top<0;
	}

	//栈置空操作
	public void clear()
	{
		top = -1;
	}

	//获取当前栈中元素个数
	public int currentSize()
	{
		return top+1;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -