小编Tin*_*iny的帖子

Java:对象分配

我在java中,当你这样做时object1=object2,你会复制object2to 的引用object1,所以object1object2指向"同一个对象.是不是?

我写了一个函数来排序堆栈.

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 reference object

2
推荐指数
2
解决办法
405
查看次数

Java if和else语句

我正在尝试用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)

java if-statement

2
推荐指数
1
解决办法
214
查看次数

SimpleDateFormat无法解析日期:使用解析方法时的"9-Jul"

我想用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示例站点,并随着此错误发布.

java datetime date apache-poi simpledateformat

2
推荐指数
1
解决办法
608
查看次数

Oracle中带引号字段的CREATE语句

我使用以下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)

sql oracle ddl oracle10g

2
推荐指数
1
解决办法
120
查看次数

为什么 new 在 Java 中被称为运算符?

为什么new关键字在Java中称为运算符?

我知道new在 Java 中为对象动态分配内存并返回对它的引用,但为什么将其称为运算符?

java new-operator

2
推荐指数
2
解决办法
969
查看次数

在Java(JSP)中获取dd-MM-yyyy日期格式

我正在使用输入=日期日历,我想在我的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)

java date date-format simpledateformat

2
推荐指数
1
解决办法
3万
查看次数

Java中的静态变量如何工作?

执行以下代码时

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方法上有所不同?

java

2
推荐指数
1
解决办法
116
查看次数

Java Calendar.add影响其他Calendar对象吗?

我正在尝试将连续的日历天添加到中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,但确实如此。非常感谢!

java calendar arraylist

2
推荐指数
1
解决办法
606
查看次数

在JSF中读取和写入XML文件

我在网上没有发现如何在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或其他东西?

xml jsf jsf-2.2

2
推荐指数
1
解决办法
2542
查看次数

Joda日期格式化程序

有谁知道如何解析的日期,例如:Mon Aug 04 16:07:00 CEST 2014dd/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:SSlastCommunicationToDisplay.getDateOnLine().toString() = Mon Aug 04 16:07:00 CEST 2014

我找不到关于该图书馆的明确解释.我被要求使用它,而不是SimpleDateFormat因为它不是线程安全的.

java datetime date jodatime

2
推荐指数
1
解决办法
1万
查看次数