那么为什么不总是调用toString?这是使用Android API的示例.
例如
@Override
public void onItemSelected(AdapterView<?> adapterView, View view,
int position, long id) {
Toast.makeText(this, adapterView, Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
不会编译.但是,如果我将其更改为
@Override
public void onItemSelected(AdapterView<?> adapterView, View view,
int position, long id) {
Toast.makeText(this, adapterView.toString(), Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
它会.实际差异是什么?
我想在外部网页(http://www.bring.no/page?id=4994)上创建一个使用运费计算器的应用程序来计算运费.
场景将是用户将填写字段,然后他将必须提交,这将使用页面的运费计算器,然后获得价值(运费).
基本上我想做的是一个swing应用程序,看起来类似于现有的运费计算器,传递参数,并检索结果.
我不知道该怎么做.所以任何提示或提示都将受到高度赞赏!:)
我已阅读有关Java枚举的内容并定期使用它们.但是,我不明白为什么例如JFrame.EXIT_ON_CLOSE
返回一个int
.
考虑http://download.oracle.com/javase/1.5.0/docs/guide/language/enums.html ;
// int Enum Pattern - has severe problems!
public static final int SEASON_WINTER = 0;
public static final int SEASON_SPRING = 1;
public static final int SEASON_SUMMER = 2;
public static final int SEASON_FALL = 3;
Run Code Online (Sandbox Code Playgroud)
不是类型安全 - 因为一个季节只是一个int,你可以传递任何其他需要一个季节的int值,或者将两个季节加在一起(这没有任何意义).
JFrame.EXIT_ON_CLOSE
返回3,同时JFrame.HIDE_ON_CLOSE
返回1,这意味着后者中的三个等于第一个.
为什么这样实现?
假设我有一个布尔变量foo
。
目前我用IF foo = FALSE THEN ...
它来比较一下,但似乎很麻烦。一定有更好的方法!
另一种方法是将变量重命名为not_foo
,但这并没有真正使其变得更简单。
有没有办法像这样测试IF !foo THEN ...
?
为什么一些属性,如android:layout_width
被放在一起用下划线?虽然例如android:textColor
使用骆驼套管?
为什么不完全坚持一种风格(下划线或骆驼套管)?
我有一个数组d = ['foo', 'bar', 'baz']
,并希望将它的元素放在一个由 最后一个元素,
和and
最后一个元素分隔的字符串中,这样就可以了foo, bar and baz
.
这是我正在尝试做的事情:
s = ''
d.each_with_index { |x,i|
s << x
s << i < d.length - 1? i == d.length - 2 ? ' and ' : ', ' : ''
}
Run Code Online (Sandbox Code Playgroud)
但是解释器给出了一个错误:
`<': comparison of String with 2 failed (ArgumentError)
但是,它可以+=
代替<<
,但Ruby Cookbook说:
如果效率对您很重要,则在将项目附加到现有字符串时不要构建新字符串.[等等] ......请
str << var1 << ' ' << var2
改用.
+=
在这种情况下是否可能?
此外,必须有一个比上面的代码更优雅的方式.
我使用sigsetjmp和siglongjmp编写了一个分段错误处理程序.一旦它进入信号处理程序,我调用siglongjmp,以便跳过错误的指令.
问题是,我再次想要导致SIGSEGV并转到相同的处理程序,但现在sigsetjmp将返回1.
如何重置sigsetjmp?
这是我的代码:
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/types.h>
#include <fcntl.h>
#include <signal.h>
#include <setjmp.h>
sigjmp_buf env, env1;
void SIGSEGV_handler(int signal)
{
printf("Segmentation fault caught\n");
siglongjmp(env, 1);
}
int main()
{
void * allocation;
size_t size;
static int devZerofd = -1;
struct sigaction sa, sa1;
sa.sa_handler=(void*)SIGSEGV_handler;
sigaction(SIGSEGV, &sa, NULL);
if ( devZerofd == -1 ) {
devZerofd = open("/dev/zero", O_RDWR);
if ( devZerofd < 0 )
perror("open() on /dev/zero failed");
}
allocation = …
Run Code Online (Sandbox Code Playgroud) 我正在用C++创建一个俄罗斯方块克隆,我有一个枚举GameProperty
,具体如下:
enum GameProperty {
NUM_OF_TETROMINOES = 7,
NUM_OF_TILES = 4,
TETROMINO_ROTATIONS = 4
};
Run Code Online (Sandbox Code Playgroud)
在我的情况下,我只在循环通过tetromino的瓷砖时使用这些值,例如:
for (int i = 0; i < TETROMINO_TILES; i++) { }
Run Code Online (Sandbox Code Playgroud)
在任何具有相同价值的多个普查员的情况下,是否认为是不良做法?
首先我检查过,这不是重复的。这里的条件与其他问题完全不同。请在回答之前阅读我的整篇文章。
我有一个宽度和高度未知的 ASP.NET 页面,我想将其中的所有元素居中。不管是内联还是块。
该<center>
标签可以满足需要,但它已经过时了。
并非text-align:center;
在所有条件下都有效。[内联]
并非margin:auto;
在所有条件下都有效。[堵塞]
以下代码已经适用于所有网络浏览器:
<div style="float: left; position: relative; left: 50%;">
<div style="float: left; position: relative; left: -50%;">
my elements here
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这段代码适用于所有条件,但它会导致 Rad Telerik Ajax 弹出元素具有未知的弹出位置,该位置通常出现在页面之外。
那么什么是与适用于所有浏览器的标签完全等效的呢?请不要发布我在这里提到的当前解决方案!<center>
我正在尝试创建一个列出电影的XSLT,我正在设计标题,以便每个标题都有自己的颜色,然后用插值选择标题(XPath?)
这是XSL文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>Videos</title>
<style>
table, tr, td { border: thin black solid }
th { background-color: #AAFFAA }
.Daredevil { color: red; }
/* Look at those spaces! Hrmphf! */
.Drag Me To Hell { color: green; }
</style>
</head>
<body>
<table>
<tr><th>Movies</th></tr>
<xsl:apply-templates select="//movie"/>
</table>
</body>
</html>
</xsl:template>
<xsl:template match="//movie[not(@title=preceding::movie/@title)]">
<!-- Title should be the one of the titles in the CSS -->
<tr class="{@title}"><td><xsl:value-of select="@title"/></td></tr>
</xsl:template>
</xsl:stylesheet> …
Run Code Online (Sandbox Code Playgroud)