我有一个简单的Java类,如下所示:
public class Test {
private String s;
public String foo() {
try {
s = "dev";
return s;
}
finally {
s = "override variable s";
System.out.println("Entry in finally Block");
}
}
public static void main(String[] xyz) {
Test obj = new Test();
System.out.println(obj.foo());
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码的输出是这样的:
Entry in finally Block
dev
Run Code Online (Sandbox Code Playgroud)
为什么s不在finally块中覆盖,而是控制打印输出?
我有一个TextBox与AutoCompleteExtender当人开始在输入TextBox与城市名称列表中出现.这工作正常,但现在我想验证,如果他们只需键入textbox并没有选择一个从它验证城市是不存在的名单在数据库中.我想验证它使用Ajax和没有PostBack在最终提交之前form.
如何在flex 4中实现撤消重做操作以维护历史记录?我正在使用flex UIComponent和DisplayObjects来创建和编辑图表,但在flex中,无法直接处理用户操作历史记录.有任何想法实现这一目标吗?
我想以这种方式验证电话号码: -
该字段应允许用户输入字符并应自动更正.因此,"+ 1-908-528-5656"的条目不会为用户创建错误,它只会更改为"19085285656".
我也希望编号在9到11之间.
我也试过下面的代码,但没有得出最终的解决方案:
final String PHONE_REGEX = "^\\+([0-9\\-]?){9,11}[0-9]$";
final Pattern pattern = Pattern.compile(PHONE_REGEX);
String phone = "+1-908-528-5656";
phone=phone.replaceAll("[\\-\\+]", "");
System.out.println(phone);
final Matcher matcher = pattern.matcher(phone);
System.out.println(matcher.matches());
Run Code Online (Sandbox Code Playgroud) 我有抽象类,有两个方法如下:
public abstract class SessionExecutionBody {
public Object execute() {
executeWithoutResult();
return null;
}
public void executeWithoutResult() {}
}
Run Code Online (Sandbox Code Playgroud)
我按如下方式实现了这个类:
final HTTPDestination destination = sessionService.executeInLocalView(new SessionExecutionBody() {
@Override
public Object execute() {
userService.setCurrentUser(userService.getAdminUser());
final String destinationName = getConfigurationService().getConfiguration().getString(DESTINATION_PROPERTY);
return getHttpDestinationService().getHTTPDestination(destinationName);
Run Code Online (Sandbox Code Playgroud)
当我运行sonarLint时,它显示的主要问题是将这个匿名类转换为lambda表达式,但是我无法找到相同的方法,我可以将该表达式转换为lambda吗?
我正在写一个方法,它将返回regiondata的列表,我正在以下面的方式做但是得到错误
@Override
public List<RegionData> getAllRegionsForDeliveryCountries()
{
final List<RegionData> regionData = new ArrayList<>();
final List<String> countriesIso = getCountryService().getDeliveryCountriesIso();
regionData = countriesIso.stream().map(c->i18nFacade.getRegionsForCountryIso(c)).collect(Collectors.toList());
return regionData;
}
Run Code Online (Sandbox Code Playgroud)
我收到了错误
type mismatch: cannot convert from List<List<RegionData>> to List<RegionData>
Run Code Online (Sandbox Code Playgroud)
on line regionData = countriesIso.stream().map(c-> i18nFacade.getRegionsForCountryIso(c)).collect(Collectors.toList());
函数i18nFacade.getRegionsForCountryIso(c)返回一个区域数据列表,我想将这些列表组合成单个列表.我尝试使用lambda但无法这样做.
我有一个清单:list = [1,2,3].我想将其转换为带括号的字符串:string = (1,2,3).
目前我正在使用字符串替换string = str(list).replace('[','(').replace(']',')').但我认为使用regex.sub有更好的方法.但我不知道该怎么做.非常感谢
我正在使用此方法将共享对象保存在特定位置,但我无法提供路径
SharedObject.getLocal("save","how to give path here for window");
Run Code Online (Sandbox Code Playgroud)
这给出了以下错误
Error: Error #2130: Unable to flush SharedObject.
at Error$/throwError()
at flash.net::SharedObject/flush()
at OnlineDiagramEditor/SaveData_mouseDownHandler()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3240]
at OnlineDiagramEditor/__SaveData_mouseDown()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3522]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UIComponent.as:13152]
at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2918]
Run Code Online (Sandbox Code Playgroud)
有时它给
Error: Error #2134: Cannot create SharedObject.
at flash.net::SharedObject$/getLocal()
at OnlineDiagramEditor/SaveData_mouseDownHandler()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3236]
at OnlineDiagramEditor/__SaveData_mouseDown()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3522]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UIComponent.as:13152]
at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2918]
Run Code Online (Sandbox Code Playgroud) 我正在使用cygbin在寡妇-7中安装hadoop-1.0.3.现在我想安装HBase所以请告诉我哪个版本的Hbase与hadoop 1.0.3兼容?
我有一个数字的问题,我想使用递归函数递增.该函数没有像我期望的那样返回值.在调试时,我看到数字增加但是当返回值时,似乎对数字的调整以相反的顺序返回.
这是一个简单的例子:
private static int recursionTest(int num){
if (num < 10){
recursionTest(++num);
}
return num;
}
public static void main(String[] args) {
System.out.println(recursionTest(1));
}
Run Code Online (Sandbox Code Playgroud)
输出始终为2.当我使用逐步调试器时,我看到以下内容:
为什么值最终会减少,如何返回最初计算的值?
Set <ShipperModel> shippers = baseSiteSerivce.getCurrentBaseSite().getStores().get(0).getShippers();
final List<KeyValueStoreModel> kvList = keyValueStoreService.getKeyValueStoreModelListByCode(HERITAGEUNIT_DELIVERYINSTRUCTION_SHIPVIA);
for (ShipperModel shipperModel : shippers)
{
for (KeyValueStoreModel keyValueStoreModel : kvList)
{
if(shipperModel.getCode().equals(keyValueStoreModel.getCode()))
{
// if codes are equals then it will remain in the kvList.
}
}
}
Run Code Online (Sandbox Code Playgroud)
我有两个项目列表,并根据托运人我想过滤kvlist我想执行操作kvlist.remainAll(shipper(based on code)),并希望将这些循环转换为流代码.
我正在尝试根据他们的名称获取产品评论地图,并且需要像这样的地图
Map<String, Set<String>> productReviewMap;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试获取地图时,我得到了
Map<String, Set<Set<String>>> productReviewMap
Run Code Online (Sandbox Code Playgroud)
基于以下代码:
Map<String, Set<Set<String>>> productReviewMap = products.stream().collect(
Collectors.groupingBy(Product::getName, Collectors.mapping(Product::getReviews, Collectors.toSet())));
Run Code Online (Sandbox Code Playgroud)
我如何获得预期的地图。我们在流中使用 flatMap 但如何在收集器中实现它?
我有String,其中包含一些特殊字符和空格.我想删除空格和特殊字符,我正在这样做
String str = "45,%$^ Sharma%$&^,is,46&* a$# java#$43 Developer$#$^ in#$^ CST&^* web*&(,but He%^&^% want to move@!$@# in another team";
System.out.println( str.replaceAll("[^a-zA-Z]", " ").replaceAll("\\s+"," "));
Output :- sharma is a java Developer in CST web but He want to move in another team
Run Code Online (Sandbox Code Playgroud)
我可以使用单一操作吗?怎么样?
java ×8
java-8 ×4
java-stream ×3
regex ×3
ajax ×1
apache-flex ×1
asp.net ×1
collections ×1
flex4.5 ×1
flex4.6 ×1
hadoop ×1
hbase ×1
lambda ×1
python ×1
recursion ×1
string ×1
try-finally ×1
validation ×1