求大神看一个JAVA编程问题
用二维数组肯定没什么难度了 a[i][j] = i * j 即可把结果存到数组中。需要数组大小为81
一维数组存储也很简单。数组大小为45
把数据结果存进去,按照楼上的方法就能将乘法表里的各个结果从上到下依次存进去。
既然存储肯定是用来查找的,比如2*3,怎么找到它的结果呢,在乘法表上2*3的位置在第三行第2个位置,计算第一行和第二行的所有结果个数是个等差数列3(3-1)/2,再加2就是所求结果所在的位置,i * j的位置在
result[j*(j-1)/2+i-1]。
也许你觉得用乘除法来计算乘法表结果的位置有点搞笑,如果存储的是复杂数据的话就有用了
说了半天,其实跟散列表差不多啦
我就不分2个类了。下面贴出代码和结果。
public class Account{ String customerId; String accountNo; double balance; public Account(String _customerId,String _accountNo,double _balance){ //构造方法1, this.customerId=_customerId; this.accountNo=_accountNo; this.balance=_balance; return; } public Account(String _customerId,String _accountNo){ //构造方法2 this.customerId=_customerId; this.accountNo=_accountNo; this.balance=0; return; } public void setCustomerId(String _customerId){ //设置身份信息 this.customerId=_customerId; } public String getCustomerId(){ //获取身份信息 return this.customerId; } public void setAccountNo(String _accountNo){ //设置账号ID this.accountNo=_accountNo; } public String getAccount(){ //获取账号信息 return this.accountNo; } public void setBalance(double _balance){ //设置初始存款 this.balance=_balance; } public double getBalance(){ //获取存款信息 return this.balance; } public double deposit(double savecash){ //存款 this.balance=savecash+this.balance; return this.balance; } public double withdraw(double getcash){ //取款 this.balance=this.balance-getcash; return this.balance; } public static void main(String [] args){ Account a1=new Account("张三","20155251",2000); Account a2=new Account("张三","20155252"); Account a3=new Account("李四","20155253",3000); a1.withdraw(500); a1.withdraw(1000); a2.deposit(1000); a3.withdraw(300); System.out.println(a1.getAccount()); System.out.println(a1.getBalance()); System.out.println(a2.getAccount()); System.out.println(a2.getBalance()); System.out.println(a3.getAccount()); System.out.println(a3.getBalance()); }}
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
public class BoxOffice {
/**
* @param args
*/
public static void main(String[] args) {
BoxOffice bo = new BoxOffice();
System.out.println("Cost of Tickets:$" + bo.getTotalPrice("g", 2014, 3, 22, true, 3, 2));
}
public int getTotalPrice(String name, int year, int month, int date, boolean isMatinee, int adultTickets, int stuTickets) {
// 三场电影平日正常价格,名字缩写,放入map;走数据库忽略
Map<String, Integer> movieMap = new HashMap<String, Integer>();
movieMap.put("C", 10);
movieMap.put("G", 8);
movieMap.put("P", 8);
int defaultPrice = movieMap.get(name.toUpperCase());
int day = getDayOfWeek(date, month, date);
int flag = stuTickets == 0 ? 0 : 1;// 是否有学生票
int adultPrice = getTicketPrice(defaultPrice, isMatinee, day, flag);// 成人票价
int stuPrice = getTicketPrice(defaultPrice, isMatinee, day, flag);// 学生票价
int total = adultPrice * adultTickets + stuTickets * stuPrice;
return total;
}
/**
* 平日午夜的价格 (规则:平日-2)
*
* @param regularPrice
* @param isMatinee
* @return
*/
public int getMatineePrice(int price, Boolean isMatinee) {
if (isMatinee)
return price - 2;
else
return price;
}
/**
* 周五到周日所有票价加三元
*
* @param price
* @param day
* @return
*/
public int getRegularAddPrice(int price, int day) {
if (day == 5 || day == 6 || day == 7)
return price + 3;
else
return price;
}
/**
* 计算单人票价
*
* @param price
* @param isMatinee
* @param day
* @param flag
* 1:学生 0:成年人
* @return
*/
public int getTicketPrice(int price, Boolean isMatinee, int day, int flag) {
price = getMatineePrice(price, isMatinee);
price = getRegularAddPrice(price, day);
if (flag == 1) {
if (!isMatinee)
return price - 2;// 学生只可平日优惠2元
else
return price;
} else {
return price;
}
}
/**
* 判断传入时间是周几
*
* @param year
* @param month
* @param date
* @return
*/
public int getDayOfWeek(int year, int month, int date) {
Calendar time = Calendar.getInstance();
time.set(year, month - 1, date);
int num = time.get(Calendar.DAY_OF_WEEK) - 1;
if (num == 0)
return 7;
else
return num;
}
}
你看下我的思路,Scanner部分自己加下
这么长一段,没看明白
大神帮忙写个JAVA代码 高悬赏200
回答:import java.io.ByteArrayInputStream;import java.io.IOException;import java.util.HashMap;import java.util.Map;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import ...
java的JTextarea不显示,代码如下求大神吗帮我看看,已通过主函数new出对 ...
new show().setVisible(true);这样就显示正常了。也即是把 setVisible()语句移到主方法中就可以了。特别提醒:一般不要在构造器中写这一句,如果是编写Dialog类时,一写这一句,后面的程序都阻塞了。此外,在initPanel()方法中,要把 this.setLayout(null); 去掉。下面是我修正过的代码:import java....
我想学习编程,请大神推荐一个免费的网站
都是可以通过百度网盘下载免费观看学习的。在蛙课网可学习的内容更多,包括前端、后端、服务器、微服务等技术课程,如图所示:其实现在java的就业很好,未来的发展前景和就业不会错,可以说是在IT界被公认的,所以是建议想入编程大门的人,选择java。想学java编程的话,可以来这两个网站来学习。
Java小白,将多条数据库中的数据添加到一个textarea中。貌似只能将最后一...
String passwords,以及对应的set,get方法 对应在你这里应该是先获得admin这个对象 然后admin.setId(rs.getInteger(" ")):admin.setName(rs.getText(" "));textarea中应该加滚动面板或者是model,先把数据的结果集取出来放在一个2维数组里 然后把这个二维数组放在model里或者是append到你的textarea中 ...
用java编程,大神帮忙
class MethodOverloading{public int sum(int i){int max=0;for(int j=1;j<=i;j++)\/\/循环i次{max=j+max;}System.out.println(max);return max;}public double sum(double d1,double d2,double d3){double max=d1+d2+d3;System.out.println(max);return max;}public String sum(...
java中实例化对象和创建对象这两者有什么区别希望大神用代码举例说明...
实例化对象应该理解为:为了实例化某类,创建对象。你指的两个概念实际上是一回事。描述一个类的时候,有行为(方法)和属性(成员变量),我们为了把这个类实例化,所以创建对象。 ”\/\/实例化汽车类,即创建轿车对象” 这句是教材上的原话。用代码来说,Car bus = new Car(); bus是一个引用...
java难题,请求帮助,谢谢各位大神!请给我代码?
定义一个Product类,如下:public class Product { private String name;\/\/商 品名 private String price;\/\/单价 private String num;\/\/数量 private double total;\/\/商 品总价值 public Product(String name , String price, String num){this . name=name ;this. price=price;this . num=num;p...
javaswing界面设计?
用来设计可以在嵌入在网页中的Java小程序如果需要使用Swing制作一个窗口类程序我们的代码看起来应该是这样:importjavaxswing*;publicclassKyodaiUIextendsJFrame{……}控件控件是构成应用程序界面的基本元素按钮文本框进度条等这些都是控件控件(这里我们只讨论可视化控件)又可以分为容器控件和非容器控件从字面意义上来理解...
java 求大神帮忙, 比如说有10个人,第一个下拉框选着一个人后,第二个...
联动下拉框。思路肯定就那几种。比如说你第一个下拉框的数据是ajax请求后台得来的数据,第一个选中后触发选中后的事件,带上选中的数据作为条件再用ajax请求后台,以选中的数据作为条件后台组织数据返回,附值给第二个选择框。或者第二个选择框的点击下拉箭头时的事件,以第一个选择框选中的值为条件组织...
求大神 打个JAVA 代码
前置 后置 冒泡 int mp[] = new int[1,2,12,22,58,48,0];for (int i = 0; i < mp.length; i++) { for (int j = 0; j < mp.length; j++) { int temp;if (mp[i] < mp[j]) { temp = mp[j];mp[j] = mp[i];mp[i] = temp;} } } for (int i = 0; ...
宰父璧更昔: 用二维数组肯定没什么难度了 a[i][j] = i * j 即可把结果存到数组中.需要数组大小为81 一维数组存储也很简单.数组大小为45 把数据结果存进去,按照楼上的方法就能将乘法表里的各个结果从上到下依次存进去.既然存储肯定是用来查找的,比如2*3,怎么找到它的结果呢,在乘法表上2*3的位置在第三行第2个位置,计算第一行和第二行的所有结果个数是个等差数列3(3-1)/2,再加2就是所求结果所在的位置,i * j的位置在 result[j*(j-1)/2+i-1].也许你觉得用乘除法来计算乘法表结果的位置有点搞笑,如果存储的是复杂数据的话就有用了 说了半天,其实跟散列表差不多啦
楚州区15544309466: JAVA编程问题求大神帮忙看看解答谢谢! - ?
宰父璧更昔: public static void main(String[] args) { // TODO Auto-generated method stub String[] str = {"Nike背包","Adidas运动衫","李宁运动鞋","Kapa外套","361°腰包"}; System.out.println(" 本次活动特价商品有:"); for(String ...
楚州区15544309466: 一道Java编程题,拜托了各位大神 - ?
宰父璧更昔: 实现如下:public static void main(String[] args) { //使用TreeSet集合自带排序,排序规则由Comparator中的compare方法确定 TreeSet<Student> set = new TreeSet<>(new Comparator<Student>() { @Override public int compare(Student o1, ...
楚州区15544309466: 急求一个java编程问题啊 ??????
宰父璧更昔: public class Test { public static void main(String[] args) { int length1=getNumLength(-100); int length2=getNumLength(10660); System.out.println("length1:"+length1+"----length2:"+length2); } public static int getNumLength(int num){ //将数字转化...
楚州区15544309466: 求JAVA高手帮忙看一下这个代码的问题,不胜感激! - ?
宰父璧更昔: 把public enum Season前面的public去掉,一个文件里面只能有一个public类.
楚州区15544309466: java程序问题 15分求大神 - ?
宰父璧更昔: public String sswr(double a){//增加这个方法 String str = ""+a; String[] arr = str.split("\\."); str = arr[1]; if(str.length()<4){ int n = str.length(); for(int i=0;i<4-n;i++){ str = str + "0"; } return arr[0]+"."+str; }else if(str.length()>4){ str = str.substring(0,5);...
楚州区15544309466: 菜鸟问一个java语言基本的问题,各位大神帮我看看啊 - ?
宰父璧更昔: scanner.next()是从键盘输入一个字符串,trim是去掉字符串首尾的空格,toUpperCase是把字符串中的字母转换成大写
楚州区15544309466: 求教大神一道简单的java程序题...不知哪里出错了,还望指点一二. - ?
宰父璧更昔: 不是大小写的问题,而是你的程序中大括号放错了位置,致使程序无法运行!你仔细检查即可轻易发现!下面是我修改后的源代码,运行无误:public class...
楚州区15544309466: 一个JAVA问题 求高手解答 - ?
宰父璧更昔: 才学习 就要有学习的方法 建议先用好搜索引擎 上面的意思 在 http://www.w3pop.com/learn/view/p/4/o/1/doc/wd_XHTML_the_first_day_how_to_select_DOCTYPE/ 上有详细的介绍 看看吧
楚州区15544309466: 很简单的java问题,求高手停留1秒... - ?
宰父璧更昔: 在CMD下输入:java回车javac回车如果两次看到的都是一大堆提示信息,说明你的JDK安装正确,如果显示不是正确的内部命令,说明JDK没安好,或环境变量配置有问题.java及javac功...