我有一个包含EditText以下属性的 XML 文件:
<EditText
android:id="@+id/et_firstname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/view_margin_below"
android:hint="@string/et_firstname"
android:maxLength="20"
android:minLines="1"
android:maxLines="1" />
Run Code Online (Sandbox Code Playgroud)
由于android:singleline已弃用,我寻找了另一个选项,我找到了这些属性,但它们不起作用。我可以输入任意多的换行符。
如果我输入echo $PATH终端,我会得到以下结果:
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/fnorbert/.local/bin:/home/fnorbert/bin
Run Code Online (Sandbox Code Playgroud)
我想使用shell脚本迭代这些路径,但我不知道如何做到这一点.
我尝试了以下方法:
for i in 1 2 3
do
echo $PATH | cut -d':' -f$i
done
Run Code Online (Sandbox Code Playgroud)
这会打印前三个路径,但是i如果可能的话,我想用变量表示每个路径.
我做了一个基本的shell脚本,它寻找文件的存在.它可以获得睡眠间隔的参数(可选).如果我不给任何,默认的是60秒.
这是我的代码:
#!/bin/bash
minutes=60
if [ "$#" -eq 1 ]; then
re='^[0-9]+$'
if ! [[ "$1" =~ re ]]; then
echo $1 is not a number!
exit 1
fi
else minutes=$1*60
fi
while [ ! -f uj_aru ]
do
last | grep Apr
sleep "$minutes"
done
Run Code Online (Sandbox Code Playgroud)
运行此后,我收到此错误:
sleep: invalid time interval '*60'
我想这里有一个变量的小错误,但我没有设法搞清楚.
我有一个数组,我填写了一个这样的:
var obj = [];
for(i = 0; i < data.bids.length; i += 1) {
obj.push(JSON.parse(data.bids[i][0]));
}
Run Code Online (Sandbox Code Playgroud)
之后我验证数组是否包含所需的值(它包含):
console.log("Array after the for: \n");
console.log(obj);
Run Code Online (Sandbox Code Playgroud)
我试图挽救这下Redis的关键,但reply为undefined
client.set('order-book:buy:bitstamp', obj, function(err, reply) {
console.log(reply);
});
Run Code Online (Sandbox Code Playgroud)
我也试过rpush,但没有运气。
可能是什么问题呢?
我们来看一个现实世界的例子吧.
假设,我有三只狗,但一只狗可能与另一只狗不同.
第一只狗喜欢吠叫和吃东西,第二只狗喜欢玩耍和追逐猫,第三只狗喜欢跑步和慢跑(将这些动作视为方法).
我如何在Java中实现它?我必须使用什么,最佳做法是什么?抽象类,接口或它们两者?