我在java中,当你这样做时object1=object2,你会复制object2to 的引用object1,所以object1并object2指向"同一个对象.是不是?
我写了一个函数来排序堆栈.
import java.util.Stack;
public class sortStack {
public static void main(String[] str) {
Stack<Integer> s = new Stack<Integer>();
s.push(2);
s.push(21);
s.push(43);
s.push(3);
s.push(87);
s.push(2);
s.push(12);
s.push(10);
s.push(25);
sortStack(s);
while (!s.isEmpty()) {
System.out.print(s.pop() + " ");
}
}
public static void sortStack(Stack<Integer> src) {
Stack<Integer> dst = new Stack<Integer>();
Stack<Integer> buf = new Stack<Integer>();//buffer
while (!src.isEmpty()) {
int v = src.pop();
if (dst.isEmpty()) {
dst.push(v);
}
while (!dst.isEmpty() && …Run Code Online (Sandbox Code Playgroud) 我正在尝试用Java创建一个简单的文本冒险游戏,当我键入Quit时,它结束了游戏.但相反它会询问你是否想要执行任务,即使你输入quit,假设结束代码,我尝试使用循环来修复此错误,但不得不运气.知道我哪里错了吗?
import java.util.*;
public class TextGame {
public static void main(String[] args) {
//Boolean run = true;
//while (run){
Scanner in = new Scanner(System. in );
System.out.println("~SPECTRE~");
System.out.println("");
System.out.println("Please Choose One Below");
System.out.println("");
System.out.println("New");
System.out.println("Quit");
System.out.println("");
String option;
System.out.print("Select one of the options here: ");
option = in .next();
if (option.equals("New")) {
System.out.println("Hello adventurer! Welcome to the land of Spectre.");
String name;
System.out.print("What is your name adventurer? ");
name = in .next();
System.out.println("Hello there! " + name);
} else if …Run Code Online (Sandbox Code Playgroud) 我想用SimpleDateFormat.parse方法来设置日期:
private static SimpleDateFormat fmt = new SimpleDateFormat("dd-MMM");
...
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
calendar.setTime(fmt.parse("9-Jul"));
calendar.set(Calendar.YEAR, year);
Run Code Online (Sandbox Code Playgroud)
但我得到:
Exception in thread "main" java.text.ParseException: Unparseable date: "9-Jul"
at java.text.DateFormat.parse(Unknown Source)
at BusinessPlan.main(BusinessPlan.java:116)
Run Code Online (Sandbox Code Playgroud)
代码来自Apache示例站点,并随着此错误发布.
我使用以下CREATE语句在Oracle 10g中创建了一个表.
CREATE TABLE test ("id" NUMBER(35, 0) primary key, "description" VARCHAR2(250) not null);
Run Code Online (Sandbox Code Playgroud)
基本表结构如下所示.
--------------------------------------------------------------------------------
Column Name Data Type Nullable Default Primary Key
--------------------------------------------------------------------------------
id NUMBER(35, 0) No - 1
description VARCHAR2(250) No - -
Run Code Online (Sandbox Code Playgroud)
应该注意的是,此CREATE语句中的列名称用双引号括起来只是为了有趣:)
在发出这个DDL语句之后,我发出了三个DML语句来添加这么多行,如下所示.
INSERT INTO test VALUES (1, 'aaa');
INSERT INTO test VALUES (2, 'bbb');
INSERT INTO test VALUES (3, 'ccc');
Run Code Online (Sandbox Code Playgroud)
最后,执行以下SELECT语句以验证是否插入了这些行.
SELECT * FROM test;
Run Code Online (Sandbox Code Playgroud)
Oracle确实显示与执行此查询时完全相同的三行.
但是当我发出以下SELECT查询时,
SELECT id, description FROM test;
Run Code Online (Sandbox Code Playgroud)
甲骨文抱怨,
ORA-00904:"DESCRIPTION":标识符无效
以下(相同)查询也是,
SELECT …Run Code Online (Sandbox Code Playgroud) 为什么new关键字在Java中称为运算符?
我知道new在 Java 中为对象动态分配内存并返回对它的引用,但为什么将其称为运算符?
我正在使用输入=日期日历,我想在我的jsp中输出这种日期格式(dd-MM-yyyy),当我在输入中给出的日历中选择2014年4月的第二天时,我有这个在我的jsp输出:
2014年4月2日星期三00:00:00 WET 2014
这是你的代码:
index.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form name="datepickeer" action="showdates.jsp" method="POST">
<table>
<tr><td>Date début :</td> <td><input type = "date" name = "datedebut">
</td><tr>
<tr><td><input type = "submit" name = "submit" value = "submit">
</td></tr>
</table>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
showdates.jsp:
<%@ page import="java.util.Date,java.text.SimpleDateFormat,java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<% String dateStr = request.getParameter("datedebut"); …Run Code Online (Sandbox Code Playgroud) 执行以下代码时
class Foo {
static int size = 7;
static void changeIt(int size) {
size = size + 200;
System.out.println("size in changeIt is " + size);
}
public static void main(String[] args) {
System.out.println("size = " + size);
changeIt(size);
System.out.println("size after changeIt is " + size);
}
}
Run Code Online (Sandbox Code Playgroud)
答案是
size = 7
size in changeIt is 207
size after changeIt is 7
Run Code Online (Sandbox Code Playgroud)
我期待的答案是
size after changeIt is 207
Run Code Online (Sandbox Code Playgroud)
为什么静态变量的值在changeIt方法和main方法上有所不同?
我正在尝试将连续的日历天添加到中ArrayList。当我添加一天ArrayList并稍后使用Calendar.add方法转到第二天时,我不知道为什么ArrayList也会自动修改,即原始条目添加了1天?下面是我的代码,可以解释这种情况:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.ArrayList;
public class TestingStuff {
public static void main(String[] args) throws ParseException {
ArrayList<Calendar> cals = new ArrayList<Calendar>();
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd");
Calendar startDate = Calendar.getInstance();
startDate.setTime(sdf.parse("Mar 25"));
cals.add(startDate);
Calendar secondDate = startDate;
secondDate.add(Calendar.DATE, 1);
Calendar thirdDate = Calendar.getInstance();
thirdDate.setTime(sdf.parse("Mar 26"));
if (cals.contains(thirdDate)) {
System.out.println("It does contain");
} else {
System.out.println("Sorry, it does not contain");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我预计不会在3月26日举行ArrayList,但确实如此。非常感谢!
我在网上没有发现如何在JSF中读/写XML文档.我在JSP中使用XALAN了解JSTL .例如,
下面定义了以下XML文件/WEB-INF.
<?xml version="1.0" encoding="UTF-8"?>
<fruits>
<fruit>
<name>Orange</name>
<price>10</price>
</fruit>
<fruit>
<name>Banana</name>
<price>20</price>
</fruit>
<fruit>
<name>Apple</name>
<price>30</price>
</fruit>
</fruits>
Run Code Online (Sandbox Code Playgroud)
可以在JSP中读取此文档,如下所示.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<c:import var="items" url="/WEB-INF/TextXML.xml"/>
<x:parse var="fruits" doc="${items}"/>
<table rules="all" border="1">
<tr>
<th>index</th>
<th>Fruit Name</th>
<th>Price</th>
</tr>
<x:forEach var="item" select="$fruits/fruits/fruit" varStatus="loop">
<tr>
<td><c:out value="${loop.index+1}"/></td>
<td><x:out select="$item/name" /></td>
<td><x:out select="$item/price" /></td>
</tr>
</x:forEach>
</table>
Run Code Online (Sandbox Code Playgroud)
这将填充具有三列的HTML表.
如何在JSF中实现相同的功能,可能使用JAXB或其他东西?
有谁知道如何解析的日期,例如:Mon Aug 04 16:07:00 CEST 2014
对dd/MM/YYYY HH:MM:SS使用DateTime格式化从乔达.我试过了:
final DateTimeFormatter sdf = DateTimeFormat.forPattern(DATE_FORMAT);
DateTime lastDateOnline = sdf.parseDateTime(lastCommunicationToDisplay.getDateOnLine().toString());
return lastDateOnline.toString();
Run Code Online (Sandbox Code Playgroud)
DATE_FORMAT = dd/MM/YYYY HH:MM:SS 和
lastCommunicationToDisplay.getDateOnLine().toString() = Mon Aug 04 16:07:00 CEST 2014
我找不到关于该图书馆的明确解释.我被要求使用它,而不是SimpleDateFormat因为它不是线程安全的.
java ×8
date ×3
datetime ×2
apache-poi ×1
arraylist ×1
calendar ×1
date-format ×1
ddl ×1
if-statement ×1
jodatime ×1
jsf ×1
jsf-2.2 ×1
new-operator ×1
object ×1
oracle ×1
oracle10g ×1
reference ×1
sql ×1
xml ×1